學習Vue(一):vue的基本指令
阿新 • • 發佈:2019-05-02
元素 show 自己的 button ole ESS 雙向 樣式 ash
- Vue是一款漸進式的js框架,所謂的漸進式,就是說在開發的過程中,可以很適合的隨時的嵌入項目中,使用的時候沒有額外的負擔。
- Vue的基本指令
- 在創建vue實例的時候,其中有兩個固定參數 el :與DOM的id進行綁定,相互關聯;data:表示json格式的數據,而這些數據都是響應式的
<div id="app"> <span v-bind:title="message"> 鼠標懸停查看動態綁定的提示信息! </span> </div>
var app = new Vue({ el:
v-bind特性被稱為指令。指令帶有前綴
v-
,表示它們是 Vue 提供的特殊特性。它們會在渲染的 DOM 上應用特殊的響應式行為。在這裏,該指令的意思是:“將這個元素節點的title
特性和 Vue 實例的message
屬性保持一致”。v-bind:style可以縮寫為:style;點擊指令v-on:click可縮寫為@click - 條件與循環
<div id="app"> <p v-if
v-if 是vue的判斷指令,其值必須與vue對象data屬性中保持一致
<li v-for="num in list"> {{num}} </li> data:{ list:["A","B","C"] }
v-for是vue的循環指令,用法如上
- 樣式的綁定:一般使用三目運算符
<div id="app"> <p v-bind:class="{active:isShow}">顯示數據</p> <p v-bind:class="isShow?active:error">顏色不同顯示數據</p> </div> <script type="text/javascript"> var
還可以使用數組的形式來改變樣式,設定是根據<style>中的先後順序指定的
<div id="app"> <p v-bind:class="items">顏色不同顯示數據</p> </div> <script type="text/javascript"> var vue = new Vue({ el:‘#app‘, data:{ items:[‘what‘,‘active‘,‘errot‘] } }) </script> <style type="text/css"> .what { background-color: green; /*綠色 */ } .active { background-color: blue;/* 藍色 */ } .errot { background-color: red;/* 紅色 */ } </style>
- 內聯樣式的綁定
<div id="app"> <p v-bind:style="objectStyle">綁定內聯樣式</p> </div> <script type="text/javascript"> var vue = new Vue({ el:‘#app‘, data:{ objectStyle:{ color:‘red‘, fontSize:‘25px‘ } } }) </script>
當使用內聯樣式的時候,我們需要使用v-bind:style指令,值得註意的是data中的數據是json格式的,所以要使用key-value的形式,並且屬性值需要使用駝峰命名法。同樣可以使用數組形式。
- 數據綁定
<div id="app"> <button @click ="reverse">反轉數據</button> <p>{{message}}</p> <input v-model:value="message" /> </div> <script type="text/javascript"> var vue = new Vue({ el:‘#app‘, data:{ message:‘Hello Vue‘ }, methods:{ reverse:function() { this.message = this.message.split(‘‘).reverse().join(‘‘); } } }) </script>
使用v-model指令實現雙向數據綁定,值得註意的是所有的函數都要定義在methods中
- Vue的生命周期
- 每個 Vue 實例在被創建時都要經過一系列的初始化過程——例如,需要設置數據監聽、編譯模板、將實例掛載到 DOM 並在數據變化時更新 DOM 等。同時在這個過程中也會運行一些叫做生命周期鉤子的函數,這給了用戶在不同階段添加自己的代碼的機會。比如說created ,mounted ,updated等鉤子函數。
<div id="app"> <p>{{message}}</p> <button type="button" @click="change">點擊更新</button> </div> <script type="text/javascript"> var vue = new Vue({ el:‘#app‘, data:{ message:‘Hello Vue‘ }, methods:{ change:function(){ this.message = this.message.split(‘‘).reverse().join(‘‘); } }, created () { console.log(‘Vue對象被創建時調用!‘); }, mounted() { console.log(‘與dom元素進行掛載時調用!‘); }, updated() { console.log(‘data中數據被更新時調用!‘) } }) </script>
這只是最基本三個鉤子函數,在實際中往往需要很多的這樣的鉤子來滿足日常開發所需,需要後續學習
- 每個 Vue 實例在被創建時都要經過一系列的初始化過程——例如,需要設置數據監聽、編譯模板、將實例掛載到 DOM 並在數據變化時更新 DOM 等。同時在這個過程中也會運行一些叫做生命周期鉤子的函數,這給了用戶在不同階段添加自己的代碼的機會。比如說created ,mounted ,updated等鉤子函數。
學習Vue(一):vue的基本指令