初识vue.js

一:为什么会想到用vue .js?

场景:ajax传回一个二维json,解析json数据,拼接html,追加到指定的DOM里.......

这个过程很繁琐,而且拼接html这一步也很容易出错.........

思考:有没有一种方法让页面的DOM随数据自己变化?

二 :他的demo(原文点我)(ps:原文比我写得好的多,我只是写写我自己的理解~..~)


交互流程:点击create 列表增加一行,点击delete删除当前行。

分析:

1.列表里的数据一般是从数据库传回来的,返回一个二维数组,vue.js 可以将循环绑在tr上


   <tr v-for="(person,index) in people">
v-for 是一个循环指令,循环people数组,当前对象person,index是索引(0开始)

2.点击create,获取文本框的值,增加一行在末尾;vue.js 可以让数据和DOM绑定,简言之,我文本框的值是随我的Vue的实例对象里面的数据自动更新的

v-model指令创建双向绑定:

 <p>Name: <input type="text" v-model="newPerson.Name"/></p>
这样文本框的值就和 Vue实例对象里的newPerson.Name绑定起来

        3.点击delete,删除当前行;

v-on指令可以绑定点击事件,并且可以带参数,比如这里带上当前行的索引值

  <td><input type="button"  v-on:click="deletePerson(index)" value="delete"/></td>

这样一个vue.js的小demo就算完成了。

原文demo:点击打开链接

注:原文的demo删除有点小问题,可能是版本问题,请看原文的第九楼评论。


我的理解:在这个demo中vue.js就很好的实现了DOM与数据的绑定,我们没有去直接去操作DOM,而是操作Vue的实例去帮助我们操作demo,通过这个方式不仅减少了对DOM的操作(因为Vue已经将数据和DOM绑在一起了)加大效率,而且对数据的操作也变的更方便(MVVM);





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值