vue.js声明式渲染和条件与循环基础知识


Posted in Javascript onJuly 31, 2017

vue.js声明式渲染和条件与循环的具体内容,分享给大家

绑定 DOM 元素文本值

html代码:

<div id="app">
 {{ message }}
</div>

JavaScript代码:

var app = new Vue({
 el: '#app',
 data: {
 message: 'Hello Vue!'
 }
})

运行结果:Hello Vue!

总结:数据和 DOM 已经被关联在一起,当我们改变app.message的数据,所渲染的的DOM元素会相应地更新。

绑定 DOM 元素属性

用v-bind指令绑定span元素的title属性

html代码:

<div id="app-2">
 <span v-bind:title="message">
 鼠标悬停此处几秒,
 可以看到此处动态绑定的 title!
 </span>
</div>

JavaScript代码:

var app2 = new Vue({
 el: '#app-2',
 data: {
 message: '页面加载于 ' + new Date()
 }
})

运行结果:

总结:v-bind 属性被称为指令,是由 Vue 提供的专用属性,该指令的作用就是:“将此元素的 title 属性与 Vue 实例的 message 属性保持关联更新”。当我们改变app2.message的值时,绑定了title属性的元素会进行更新。

条件

用v-if指令判断条件

html代码:

<div id="app-3">
 <p v-if="seen">现在你可以看到我</p>
</div>

JavaScript代码:

var app3 = new Vue({
 el: '#app-3',
 data: {
 seen: true
 }
})

运行结果:你可以看到我

总结:当我们把app3.seen的值改为false以后,我们会看到 span 消失。说明我们不只是可以将数据绑定到文本和属性,也可以将数据绑定到 DOM 结构。从而通过数据的更改实现元素的插入/更新/删除操作。

循环

v-for 指令,可以使用数组中的数据来展示一个项目列表

html代码:

<div id="app-4">
 <ol>
 <li v-for="todo in todos">
 {{ todo.text }}
 </li>
 </ol>
</div>

JavaScript代码:

var app4 = new Vue({
 el: '#app-4',
 data: {
 todos: [
 { text: '学习 JavaScript' },
 { text: '学习 Vue' },
 { text: '创建激动人心的代码' }
 ]
 }
})

运行结果:1.学习 JavaScript
2.学习 Vue
3.创建激动人心的代码

在控制台,输入 app4.todos.push({ text: ‘新的 item' }),你会看到列表中追加了一个新的 item。
总结:可以通过数据确定我们项目列表的长度和内容,从而减少了html的代码量

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

Javascript 相关文章推荐
动态载入/删除/更新外部 JavaScript/Css 文件的代码
Jul 03 Javascript
javascript使用isNaN()函数判断变量是否为数字
Sep 21 Javascript
jQuery 选择器详解
Jan 19 Javascript
jQuery选择器源码解读(一):Sizzle方法
Mar 31 Javascript
微信小程序 火车票查询实例讲解
Oct 17 Javascript
react-native封装插件swiper的使用方法
Mar 20 Javascript
JavaScript调用模式与this关键字绑定的关系
Apr 21 Javascript
解决修复npm安装全局模块权限的问题
May 17 Javascript
springMvc 前端用json的方式向后台传递对象数组方法
Aug 07 Javascript
详解用Webpack与Babel配置ES6开发环境
Mar 12 Javascript
React中阻止事件冒泡的问题详析
Apr 12 Javascript
vue百度地图 + 定位的详解
May 13 Javascript
在ABP框架中使用BootstrapTable组件的方法
Jul 31 #Javascript
knockoutjs模板实现树形结构列表
Jul 31 #Javascript
本地存储localStorage用法详解
Jul 31 #Javascript
Vue组件模板形式实现对象数组数据循环为树形结构(实例代码)
Jul 31 #Javascript
ES6新特性:使用export和import实现模块化详解
Jul 31 #Javascript
node koa2实现上传图片并且同步上传到七牛云存储
Jul 31 #Javascript
Angular.js初始化之ng-app的自动绑定与手动绑定详解
Jul 31 #Javascript
You might like
php 正则表达式小结
2009/08/31 PHP
PHP中创建和验证哈希的简单方法实探
2015/07/06 PHP
PHP实现的同步推荐操作API接口案例分析
2016/11/30 PHP
Laravle eloquent 多对多模型关联实例详解
2017/11/22 PHP
PHP中常用的三种设计模式详解【单例模式、工厂模式、观察者模式】
2019/06/14 PHP
jQuery 核心函数以及jQuery对象
2010/03/23 Javascript
控制页面按钮在后台执行期间不重复提交的JS方法
2013/06/24 Javascript
JQuery中dataGrid设置行的高度示例代码
2014/01/03 Javascript
JavaScritp添加url参数并将参数加入到url中及更改url参数的方法
2015/10/26 Javascript
详解JavaScript中的属性和特性
2016/12/08 Javascript
js读取json文件片段中的数据实例
2017/03/09 Javascript
angular-cli修改端口号【angular2】
2017/04/19 Javascript
基于Bootstrap分页的实例讲解(必看篇)
2017/07/04 Javascript
深入学习nodejs中的async模块的使用方法
2017/07/12 NodeJs
vue封装第三方插件并发布到npm的方法
2017/09/25 Javascript
webpack3之loader全解析
2017/10/26 Javascript
Vue项目中设置背景图片方法
2018/02/21 Javascript
angularjs数组判断是否含有某个元素的实例
2018/02/27 Javascript
angularJs利用$scope处理升降序的方法
2018/10/08 Javascript
JS实现移动端在线签协议功能
2019/08/22 Javascript
谈谈Python进行验证码识别的一些想法
2016/01/25 Python
python中实现数组和列表读取一列的方法
2018/04/03 Python
python pandas库的安装和创建
2019/01/10 Python
python求平均数、方差、中位数的例子
2019/08/22 Python
Python tkinter实现图片标注功能(完整代码)
2019/12/08 Python
解决Tensorflow sess.run导致的内存溢出问题
2020/02/05 Python
使用pytorch实现论文中的unet网络
2020/06/24 Python
你不知道的葡萄干处理法、橙蜜处理法、二氧化碳酵母法
2021/03/17 冲泡冲煮
马克华菲官方商城:Mark Fairwhale
2016/09/04 全球购物
英国男女豪华配饰和礼品网站:Black.co.uk
2020/02/28 全球购物
CAT鞋加拿大官网:CAT Footwear加拿大
2020/08/05 全球购物
2014中学教师节广播稿
2014/09/10 职场文书
党员查摆四风问题思想汇报
2014/10/25 职场文书
教师岗位职责范本
2015/04/02 职场文书
开会迟到检讨书范文
2015/05/06 职场文书
MySQL高级进阶sql语句总结大全
2022/03/16 MySQL