目錄javascript
Vue的一大特色之一就是數據的雙向綁定,v-model就是實現這個功能的指令,v-model只能運用到表單元素中,例如html
input,radio,text,address,email,select,checkbox,textarea....
表單元素才能去雙向交互,至於div和p啥的,洗洗睡吧vue
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>蜀雲泉</title> <script type="text/javascript" src="../lib/vue-2.6.10.js"></script> </head> <body> <!-- 這個div就是MVVM中的V,View --> <div id="app"> <h3 v-text="msg"></h3> <input type="text" style="width:100%" v-model="msg"> </div> <script> // 這個vm就是MVVM中的VM,ViewModel var vm=new Vue({ el: '#app', // 這個data就是MVVM中的M,Model data: { msg:"你們好,我是Vae" }, methods: { } }) </script> </body> </html>
運行,修改input的內容,你會發現上面的文字也跟着變更了,有點所見即所得的感受java
HTML代碼以下:app
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>蜀雲泉</title> <script type="text/javascript" src="../lib/vue-2.6.10.js"></script> </head> <body> <!-- 這個div就是MVVM中的V,View --> <div id="app"> <h3 v-text="msg"></h3> <input type="text" style="width:100%" v-model="msg"> <!-- v-model模擬簡易計算器 --> <input type="text" v-model="num1"> <select v-model="opt"> <option value="+">+</option> <option value="-">-</option> <option value="*">*</option> <option value="/">/</option> </select> <input type="text" v-model="num2"> <input type="button" value="=" @click="calc"> <input type="text" v-model="result"> </div> <script> // 這個vm就是MVVM中的VM,ViewModel var vm=new Vue({ el: '#app', // 這個data就是MVVM中的M,Model data: { msg:"你們好,我是Vae", num1:0, num2:0, result:0, opt:'+' }, methods: { calc(){ switch(this.opt){ case '+': this.result=parseInt(this.num1)+parseInt(this.num2); break; case '-': this.result=parseInt(this.num1)-parseInt(this.num2); break; case '*': this.result=parseInt(this.num1)*parseInt(this.num2); break; case '/': if(this.num2==0) {alert('除數不能爲0');break;} this.result=parseInt(this.num1)/parseInt(this.num2); break; } } } }) </script> </body> </html>
效果圖:this
防盜連接:本博客由蜀雲泉發表雙向綁定