vue概念:
漸進(jìn)式的javacript框架? ? ? ? 自底向上派任,逐漸增強(qiáng)
特點(diǎn):
易用、 靈活璧南、 高效
數(shù)據(jù)驅(qū)動(dòng)視圖掌逛, 也叫響應(yīng)式的數(shù)據(jù)變化,視圖自動(dòng)跟著改變
缺點(diǎn):
不支持ie8及以下版本司倚,因?yàn)?Vue 使用了 IE8 無法模擬的 ECMAScript 5 特性豆混。但它支持所有兼容 ECMAScript 5 的瀏覽器。
vue基本指令分類
v-html? ? 解析html文檔
v-text? ? 解析文本
v-if(v-else)和v-show
v-bind: 動(dòng)態(tài)綁定 可以簡寫成 :
v-on: 事件綁定 可以簡寫成 @
v-for :循環(huán)遍歷
v-model :雙向數(shù)據(jù)綁定
MVVM設(shè)計(jì)模式
? ? 這個(gè)模式动知,清晰的做到了皿伺,前端端分離。view 視圖指的就是用戶看到的界面就是視圖盒粮。model 模型(原本指的是后端邏輯)鸵鸥,在前端看來它指的就是API接口(指的就是發(fā)起請求調(diào)用的接 口)viewModel視圖模型,它作為視圖和模型之前的橋梁所存在丹皱。它可以發(fā)起請求同時(shí)可以得到響應(yīng)
? ? M --- model 模型
? ? V --- view 視圖
? ? VM --- viewModel 視圖模型
步驟
引入核心庫 建議引入開發(fā)環(huán)境
創(chuàng)建一個(gè)容器? ? ? 指定id妒穴,? 在這個(gè)容器中可以調(diào)用vue的所有語法
邏輯交互
script src="./node_modules/vue/dist/vue.js"></script>
<body>
? ? <div id="box">
? ? ? ? <h1>{{msg}}</h1>
? ? </div>
? ? <script>
? ? ? ? new Vue({
? ? ? ? ? ? el:'#box',//掛載點(diǎn)
? ? ? ? ? ? data:{//數(shù)據(jù),屬性摊崭,是聲明式讼油,不需要大家var let const ...
? ? ? ? ? ? ? ? msg:'放假還開心啊,還有20天爽室,又是一個(gè)小長假汁讼。淆攻。阔墩。'
? ? ? ? ? ? }
? ? ? ? })
? ? </script>
</body>
el 掛載點(diǎn) 不能掛載到 html 和 body 上, class是實(shí)現(xiàn)語法渲染的瓶珊,不建議啸箫,建議id,每個(gè)實(shí)例都是 唯一的
data? 數(shù)據(jù)屬性,? ? 所有要渲染的變量全部定義到這個(gè)對象上
{{}}? 插值表達(dá)式伞芹, 不能寫復(fù)雜語句忘苛,可以使用三目運(yùn)算蝉娜,可以字符串拼接
在vue中瘋狂刷新出現(xiàn)閃動(dòng)({{}}),如何解決扎唾?召川??
? 一胸遇、用v-text ,因?yàn)樗挥脅{}}渲染荧呐,所以根本不會(huì)出現(xiàn),但是太麻煩了纸镊,每個(gè)都要用才有用倍阐。這個(gè)方式不推薦!6和7逄隆!
? 二凯旭、v-cloak 全局結(jié)局閃動(dòng)問題的指令
[v-cloak]{
? display:none;
}
對于Vue是一套漸進(jìn)式框架的理解
漸進(jìn)式代表的含義是:主張最少概耻。Vue可能有些方面是不如React,不如Angular罐呼,但它是漸進(jìn)的咐蚯,沒有強(qiáng)主張,你可以在原有大系統(tǒng)的上面弄贿,把一兩個(gè)組件改用它實(shí)現(xiàn)春锋,當(dāng)jQuery用;也可以整個(gè)用它全家桶開發(fā)差凹,當(dāng)Angular用期奔;還可以用它的視圖,搭配你自己設(shè)計(jì)的整個(gè)下層用危尿。你可以在底層數(shù)據(jù)邏輯的地方用MVVM和設(shè)計(jì)模式的那套理念呐萌,也可以函數(shù)式,都可以谊娇,它只是個(gè)輕量視圖而已肺孤,只做了自己該做的事,沒有做不該做的事济欢,僅此而已赠堵。