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 相关文章推荐
限制文本字节数js代码
Mar 06 Javascript
学习jquery之一
Apr 27 Javascript
prettify 代码高亮着色器google出品
Dec 28 Javascript
javascript中的if语句使用介绍
Nov 20 Javascript
jQuery将所有被选中的checkbox某个属性值连接成字符串的方法
Jan 24 Javascript
微信小程序 WXDropDownMenu组件详解及实例代码
Oct 24 Javascript
js a标签点击事件
Mar 30 Javascript
详解Angular2响应式表单
Jun 14 Javascript
Angular实现表单验证功能
Nov 13 Javascript
浅谈webpack打包之后的文件过大的解决方法
Mar 07 Javascript
vscode中eslint插件的配置(prettier配置无效)
Sep 10 Javascript
vue 中 elment-ui table合并上下两行相同数据单元格
Dec 26 Javascript
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
总结一些js自定义的函数
2006/08/05 Javascript
jQuery 树形结构的选择器
2010/02/15 Javascript
uploadify 3.0 详细使用说明
2012/06/18 Javascript
浅析ajax请求json数据并用js解析(示例分析)
2013/07/13 Javascript
jquery导航制件jquery鼠标经过变色效果示例
2013/12/05 Javascript
js中unicode转码方法详解
2015/10/09 Javascript
Angular.Js的自动化测试详解
2016/12/09 Javascript
vue-router:嵌套路由的使用方法
2017/02/21 Javascript
JS实现的五级联动菜单效果完整实例
2017/02/23 Javascript
nodejs连接mysql数据库简单封装示例-mysql模块
2017/04/10 NodeJs
socket.io学习教程之基本应用(二)
2017/04/29 Javascript
JavaScript中利用Array filter() 方法压缩稀疏数组
2018/02/24 Javascript
详解Vue template 如何支持多个根结点
2020/02/10 Javascript
Python中的yield浅析
2014/06/16 Python
python3 爬取图片的实例代码
2018/11/06 Python
Python中is和==的区别详解
2018/11/15 Python
python如何获取当前文件夹下所有文件名详解
2019/01/25 Python
python 批量添加的button 使用同一点击事件的方法
2019/07/17 Python
Python 类属性与实例属性,类对象与实例对象用法分析
2019/09/20 Python
python 利用turtle模块画出没有角的方格
2019/11/23 Python
python实现的分析并统计nginx日志数据功能示例
2019/12/21 Python
Django中modelform组件实例用法总结
2020/02/10 Python
python模拟实现分发扑克牌
2020/04/22 Python
什么是岗位职责
2013/11/12 职场文书
关于抽烟的检讨书
2014/02/25 职场文书
大学应届生的自我评价
2014/03/06 职场文书
报纸媒体创意广告词
2014/03/17 职场文书
安全施工标语
2014/06/07 职场文书
个人查摆问题及整改措施
2014/10/16 职场文书
党员专题组织生活会发言材料
2014/10/17 职场文书
班主任自我评价范文
2015/03/11 职场文书
导游词之云南丽江-泸沽湖
2019/09/26 职场文书
python实现自定义日志的具体方法
2021/05/28 Python
Golang表示枚举类型的详细讲解
2021/09/04 Golang
Python中Numpy和Matplotlib的基本使用指南
2021/11/02 Python
Java线程的6种状态与生命周期
2022/05/11 Java/Android