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 EasyUI API 中文文档 - ComboBox组合框
Oct 07 Javascript
jQuery如何实现点击页面获得当前点击元素的id或其他信息
Jan 09 Javascript
Jquery插件分享之气泡形提示控件grumble.js
May 20 Javascript
动态读取JSON解析键值对的方法
Jun 03 Javascript
JQuery zClip插件实现复制页面内容到剪贴板
Nov 02 Javascript
网页前端登录js按Enter回车键实现登陆的两种方法
May 10 Javascript
AngularJS国际化详解及示例代码
Aug 18 Javascript
JavaScript随机生成颜色的方法
Oct 15 Javascript
jquery实现点击页面回到顶部
Nov 23 Javascript
JS简单获取当前年月日星期的方法示例
Feb 07 Javascript
JS实现根据详细地址获取经纬度功能示例
Apr 16 Javascript
Javascript执行流程细节原理解析
May 14 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
外媒评选出10支2020年最受欢迎的Dota2战队
2021/03/05 DOTA
phpmailer在服务器上不能正常发送邮件的解决办法
2014/07/08 PHP
跟我学Laravel之快速入门
2014/10/15 PHP
PHP实现通过Luhn算法校验信用卡卡号是否有效
2015/03/23 PHP
php通过修改header强制图片下载的方法
2015/03/24 PHP
MAC下通过改apache配置文件切换php多版本的方法
2017/04/26 PHP
javascript 处理HTML元素必须避免使用的一种方法
2009/07/30 Javascript
js trim函数 去空格函数与正则集锦
2009/11/20 Javascript
30分钟就入门的正则表达式基础教程
2013/02/25 Javascript
javascript事件冒泡和事件捕获详解
2015/05/26 Javascript
js实现三张图(文)片一起切换的banner焦点图
2015/08/25 Javascript
酷! 不同风格页面布局幻灯片特效js实现
2021/02/19 Javascript
jQuery的事件预绑定
2016/12/05 Javascript
简单的JS控制button颜色随点击更改的实现方法
2017/04/17 Javascript
微信小程序 http请求的session管理
2017/06/07 Javascript
vue-cli单页应用改成多页应用配置详解
2017/07/14 Javascript
Vue 2.0学习笔记之使用$refs访问Vue中的DOM
2017/12/19 Javascript
微信小程序制作表格的方法
2019/02/14 Javascript
教你使用vue-cli快速构建的小说阅读器
2019/05/13 Javascript
使用layer弹窗提交表单时判断表单是否输入为空的例子
2019/09/26 Javascript
vue实现移动端项目多行文本溢出省略
2020/07/29 Javascript
python实现电子词典
2020/04/23 Python
Python中的defaultdict模块和namedtuple模块的简单入门指南
2015/04/01 Python
Python正则替换字符串函数re.sub用法示例
2017/01/19 Python
详解python3中socket套接字的编码问题解决
2017/07/01 Python
详解Python中where()函数的用法
2018/03/27 Python
python字符串常用方法
2018/06/14 Python
python操作excel的方法
2018/08/16 Python
对python 树状嵌套结构的实现思路详解
2019/08/09 Python
Python趣味实例,实现一个简单的抽奖刮刮卡
2020/07/18 Python
abstract class和interface有什么区别
2013/08/04 面试题
大学生学习计划书
2014/09/15 职场文书
工程合作意向书范本
2015/05/09 职场文书
快消品行业营销模式与盈利模式分享
2019/09/27 职场文书
python脚本框架webpy模板控制结构
2021/11/20 Python
Django数据库(SQlite)基本入门使用教程
2022/07/07 Python