详解Vue中的基本语法和常用指令

2020-06-13 10:46:29易采站长站整理

1.迭代数组


<div id="app">
<ol>
<li v-for="site in sites">
{{ site.name }}
</li>
</ol>
</div>
<script>
new Vue({
el: '#app',
data: {
sites: [
{name: 'Runoob'},
{name: 'Google'},
{name: 'Taobao'}
] }
})
</script>

2.迭代对象中的属性


<div v-for="(val, key, i) in userInfo">
{{val}} --- {{key}} --- {{i}}
</div>

其中:【userinfo】是一个对象

3.迭代数字

<p v-for="i in 10">这是第 {{i}} 个P标签</p>

4、Vue.js 常用指令

v-cloak : 能够解决插值表达式闪烁的问题

v-bind :是vue提供的用于绑定属性的指令。可以简写为  : 要绑定的指令 。


<input type="button" value="按钮" v-bind:title="mytitle + '123'">
<script>
var vm = new Vue({
el: '#app',
data: {
mytitle: '这是一个自己定义的title'
},
methods: {
show: function() {
alert('Hello')
}
}
})
</script>

v-model :v-bind 只能实现数据的单向绑定。从M 自动绑定到V , 无法实现数据的双向绑定。 而 v-model 指令则可以实现表单元素和 M中数据的双向绑定。

注意: v-model指令只能运用在表单元素中 。


<div id="app">
<h4>{{ msg }}</h4>
<!-- input(radio, text, address, email....) select checkbox textarea -->
<input type="text" style="width:100%;" v-model="msg">
</div>

<script>
// 创建 Vue 实例,得到 ViewModel
var vm = new Vue({
el: '#app',
data: {
msg: '大家都是好学生,爱敲代码,爱学习,爱思考,简直是完美,没瑕疵!'
},
methods: {}
});
</script>

补充说明:前端MVVM 与后端的MVC的区别。

MVC:是后端分层开发的概念。

MVVM是前端视图层的概念。主要关注于视图层分离,也就是说:MVVM吧前端的视图层分为了三部分。Model ,View ,VM ViewModel

5、Vue.js 事件处理器

v-on :事件监听可以使用 v-on 指令


<div id="app">
<!-- `greet` 是在下面定义的方法名 -->
<button v-on:click="greet">Greet</button>