VUE中v-model和v-for指令详解


Posted in Javascript onJune 23, 2017

1.基本雏形

<!DOCTYPE html>
<html>
<head>
  <title></title>
  <script src="https://unpkg.com/vue/dist/vue.js"></script>
  <script type="text/javascript">
    window.onload = function(){
      var vm = new Vue({
        el:'#box',
        data:{
          msg:'Hello Vue!'
        }
      });
    }
  </script>
</head>
<body>
  <div id="box">
    {{msg}}
  </div>
</body>
</html>

需要new一个Vue实例,实例化的时候传入了一个对象{el:'#box',data:{msg:'Hello Vue!'}}。这个意思是:Vue这个只控制id="box"这个DIV元素,同时在 HTML模板上使用双花括号{{xxxx}}语法,来访问data中定义的数据。

上面代码我们new处理一个Vue的实例,并赋值给了vm变量,通过这个vm变量,我们也可以访问其中定义的数据:

var vm = new Vue({
        el:'#box',
        data:{
          msg:'Hello Vue!'
        }
      });

      console.log(vm.msg); //'Hello Vue!'

2.v-model指令

所谓的“指令”其实就是扩展了HTML标签功能(属性)。

v-model的双向数据绑定

<!DOCTYPE html>
<html>
<head>
  <title></title>
  <script src="https://unpkg.com/vue/dist/vue.js"></script>
  <script type="text/javascript">
    window.onload = function(){
      var vm = new Vue({
        el:'#box',
        data:{
          msg:'Hello Vue!'
        }
      });
    }
  </script>
</head>
<body>
  <div id="box">
    <input type="text" v-model="msg"/><br/>
    {{msg}} 
  </div>
</body>
</html>

通过v-model 指令,我们把msg 数据绑定到了input文本框,我们修改文本框的值,发现msg 数据改变了。

VUE中v-model和v-for指令详解

注意:如果我们定义的数据是数组或者json,在模板上会怎样显示出来呢?

<!DOCTYPE html>
<html>
<head>
  <title></title>
  <script src="https://unpkg.com/vue/dist/vue.js"></script>
  <script type="text/javascript">
    window.onload = function(){
      var vm = new Vue({
        el:'#box',
        data:{
          msg:'Hello Vue!',
          arr:['apple','banana','orange'],
          json:{a:'apple',b:'banana'}
        }
      });
    }
  </script>
</head>
<body>
  <div id="box">
    <input type="text" v-model="msg"/><br/>
    {{msg}} <br/>
    {{arr}} <br/>
    {{json}}

  </div>
</body>
</html>

数组和json都被当作字符串输出了,显然这不是我们理想的效果。

VUE中v-model和v-for指令详解 

3.v-for指令

<!DOCTYPE html>
<html>
<head>
  <title></title>
  <meta charset="utf-8">
  <script src="http://unpkg.com/vue/dist/vue.js"></script>

  <script type="text/javascript">
    window.onload = function(){
      var vm = new Vue({
        el:'#box',
        data:{
          arr:['apple','banana','orange'],
          json:{a:'apple',b:'banana'}
        }
      });
    }
  </script>
</head>
<body>
  <div id="box">
    <p>循环数组</p>
    <ul>
      <li v-for="a in arr">
      {{a}}
      </li>
    </ul>
    <hr>
    <p>循环出数组索引</p>
    <ul>
      <li v-for="(v,k) in arr">
      {{v}}==>{{k}}
    </ul>
    <p>循环json</p>
    <ul>
      <li v-for="item in json">{{item}}</li>
    </ul>
    <p>循环json的键</p>
    <ul>
      <li v-for="(k,v) in json">
      {{k}}==>{{v}}
      </li>
    </ul>
  </div>
</body>
</html>

VUE中v-model和v-for指令详解

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery中的$(document).ready()与window.onload的区别
Nov 18 Javascript
Jquery+WebService 校验账号是否已被注册的代码
Jul 12 Javascript
jQuery cdn使用介绍
May 08 Javascript
$.get获取一个文件的内容示例代码
Sep 11 Javascript
变量声明时命名与变量作为对象属性时命名的区别解析
Dec 06 Javascript
jquery实现动态改变div宽度和高度
May 08 Javascript
10条建议帮助你创建更好的jQuery插件
May 18 Javascript
AngualrJS中的Directive制作一个菜单
Jan 26 Javascript
浅谈React 属性和状态的一些总结
Nov 21 Javascript
Angular2开发环境搭建教程之VS Code
Dec 15 Javascript
Vue中父子组件通讯之todolist组件功能开发
May 21 Javascript
jquery使用echarts实现有向图可视化功能示例
Nov 25 jQuery
JavaScript正则表达式简单实用实例
Jun 23 #Javascript
js中的事件委托或是事件代理使用详解
Jun 23 #Javascript
JS判断非空至少输入两个字符的简单实现方法
Jun 23 #Javascript
详解Vue.js之视图和数据的双向绑定(v-model)
Jun 23 #Javascript
微信小程序组件 marquee实例详解
Jun 23 #Javascript
VUE元素的隐藏和显示(v-show指令)
Jun 23 #Javascript
vue数据双向绑定的注意点
Jun 23 #Javascript
You might like
yii框架表单模型使用及以数组形式提交表单数据示例
2014/04/30 PHP
PHP实现冒泡排序的简单实例
2016/05/26 PHP
thinkPHP5.0框架命名空间详解
2017/03/18 PHP
PDO::errorInfo讲解
2019/01/28 PHP
php使用gearman进行任务分发操作实例详解
2020/02/26 PHP
Javascript - HTML的request类
2007/01/09 Javascript
jQuery bind事件使用详解
2011/05/05 Javascript
javascript中关于执行环境的杂谈
2011/08/14 Javascript
JS前端加密算法示例
2016/12/22 Javascript
vue.js实现含搜索的多种复选框(附源码)
2017/03/23 Javascript
jquery加载单文件vue组件的方法
2017/06/20 jQuery
JavaScript 保护变量不被随意修改的实现代码
2017/09/27 Javascript
手把手教你如何使用nodejs编写cli命令行
2018/11/05 NodeJs
vue单页面在微信下只能分享落地页的解决方案
2019/04/15 Javascript
Vue组件实现触底判断
2019/06/26 Javascript
Node.js 实现远程桌面监控的方法步骤
2019/07/02 Javascript
在Layui中操作数据表格,给指定单元格添加事件示例
2019/10/26 Javascript
python 实现批量xls文件转csv文件的方法
2018/10/23 Python
记一次python 内存泄漏问题及解决过程
2018/11/29 Python
Pyqt清空某一个QTreeewidgetItem下的所有分支方法
2019/06/17 Python
numpy数组做图片拼接的实现(concatenate、vstack、hstack)
2019/11/08 Python
Python操作注册表详细步骤介绍
2020/02/05 Python
用canvas做一个DVD待机动画的实现代码
2019/04/12 HTML / CSS
医护人员英文求职信范文
2013/11/26 职场文书
客服工作职责
2013/12/11 职场文书
房屋委托书范本
2014/04/04 职场文书
安全月活动总结
2014/05/05 职场文书
群众路线剖析材料范文
2014/10/09 职场文书
2014年优秀党员材料
2014/12/18 职场文书
入党介绍人意见2015
2015/06/01 职场文书
职工趣味运动会开幕词
2016/03/04 职场文书
Pyhton模块和包相关知识总结
2021/05/12 Python
如何在Python项目中引入日志
2021/05/31 Python
详解Java实践之抽象工厂模式
2021/06/18 Java/Android
Mybatis-plus在项目中的简单应用
2021/07/01 Java/Android
Python Matplotlib绘制动画的代码详解
2022/05/30 Python