後端狗的Vue學習歷程(一) – demo示例與基本邏輯語法
源碼:Github
demo的三部分結構
- 通過
script src
引入“vue相關
js`文件
<script src="//cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
- 在
body
中的div
里通過id
綁定“vue`對象
<div id="app">
<!-- message output -->
<h1>{{message}}</h1>
</div>
- 在
js
程式碼里實現對象的綁定,初始化值、成員函數已經其他在生命周期里可能存在的鉤子函數。
<script>
var vm = new Vue({
el: "#app",
data: {
message: "hello Vue",
ok: true,
items: [{
value: "List item 1"
}, {
value: "List item 2"
}, {
value: "List item 3"
}],
username: "",
input2: "",
},
methods: {
clickButton: function() {
this.message = "button clicked ... ";
this.ok = false;
}
},
})
</script>
判斷:v-if、v-else-if、v-else
<!-- if else -->
<h2 v-if="ok===true">Yes</h2>
<h2 v-else>No</h2>
循環:v-for
<!-- for loop -->
<ol v-for="(item, index) in items" :key="index">
<li>{{index}}--{{item.value}}</li>
</ol>
事件綁定 v-on:eventType
<button v-on:click="clickButton()">Click me</button>
內容輸入的雙向綁定v-model
在v-model.lazy
情況下,更改了輸入框內容後不會即時更新,而是在輸入框失去焦點後更新。
<!-- v-model bind -->
<div>
<span>input value:</span>
<input type="text" v-model="username"><br>
<!-- <input type="text" v-model.lazy="username"><br> -->
<span> value is:</span>
<label>{{username}}</label>
</div>