vue.js是一套構建用戶界面的框架,只關注視圖層,有雙向數據綁定,能夠減少不必要的DOM操作,提高渲染效率。
一、vue.js基本結構
例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>vue基本結構</title>
//第一步:導入vue包
<script src="./vue-2.4.0.js"></script>
</head>
<body>
<div id="app">
<p>{{msg}}</p>
</div>
<script>
//第二步:創建一個vue實例
var vm = new Vue({
el: '#app', //指定要控制的區域
data: { //存放el中要用到的數據
msg: 'vue.js真是個好框架'
},
methods: { //這裏寫自己定義的函數方法
}
})
二、插值表達式v-cloak, v-text, v-html, v-bind, v-on指令的使用
例:
...代碼省略
<style>
[v-cloak] {
display: none; //v-cloak用法
}
</style>
...代碼省略
<body>
<div id="app">
<p v-cloak> {{ msg }} ----------</p>
<h4 v-text="msg">==================</h4> <!--v-text用法-->
<div v-html="msg2">1212112</div> <!--v-html用法-->
<input type="button" value="按鈕" v-bind:title="mytitle"> <!--v-bind用法-->
<input type="button" value="按鈕" :title="mytitle"> <!--v-bind的簡寫用法-->
<input type="button" value="按鈕" :title="mytitle + '123'" v-on:click="alert('hello')"> <!--v-on用法-->
<input type="button" value="按鈕" @click="show"> <!--v-on的簡寫用法-->
</div>
<script src="./lib/vue-2.4.0.js"></script>
<script>
var vm = new Vue({
el: '#app',
data: {
msg: '123',
msg2: '<h1>哈哈,我是一個的H1</h1>',
mytitle: '這是我的title'
},
methods: {
show: function () {
alert('Hello')
}
}
})
</script>
</body>
小結:1、直接使用{{}}可能會有閃爍問題,使用 v-cloak 能夠解決 插值表達式閃爍的問題
2、 默認 v-text 是沒有閃爍問題的
3、v-text會直接覆蓋元素原本的整個內容,但是 插值表達式 只會替換自己位置的這個佔位符,不會把覆蓋整個元素的內容
4、 v-html可以轉義,可以將字符串轉義成html格式
5、 v-bind: 是 Vue中,提供的用於綁定屬性的指令
6、 v-on: 事件綁定機制
注意:
<!-- v-bind Vue提供的屬性綁定機制 縮寫是 : -->
<!-- v-on Vue提供的事件綁定機制 縮寫是 @ -->