• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >vue > vue学习笔记之指令v-text && v-html && v-bind详解

vue学习笔记之指令v-text && v-html && v-bind详解

作者:椰果粒 字体:[增加 减小] 来源:互联网 时间:2017-05-30

本文主要包含vue学习笔记之指令v-text && v-html && v-bind详解等相关知识,椰果粒 希望在学习及工作中可以帮助到您

一 : 指令的概念:

指令是vue自定义的以v-开头的自定义属性。每个不同的属性都有各自不同的意义和功能

二 : 指令的语法:

v-指令名 = “表达式判断或者是业务模型中属性名或者事件名”

三 : 具体指令

1. v-text

作用 : 操作元素中的纯文本

快捷方式 : {{}}

栗子1

简写形式:将v-text=""换成{{}}

<div id="app">
 {{ message }}
</div>
var app = new Vue({
  el : '#app',
  data : {
  message : 'hello world'  
 }
})
</div>

结果:hello world

栗子2

<h1 id="app1" v-text="'今天是'+year+'年'+month+'月'"></h1>
var app1 = new Vue({
  el : "#app1",
  data : {
    year : new Date().getFullYear(),
    month : new Date().getMonth()+1
  }
})
</div>

结果:今天是2017年5月

等同于:<h1 id="app1">今天是{{year}}年{{month}}月</h1>

  1. 这里v-text="",双引号并不是代表字符串,而是vue自定义的划定界限的符号。如果我们里边输出字符串,就要在里边再添加一对单引号。而且经测验,要想输出字符串,必须添加单引号,否则会报错
  2. 这里month默认是从0开始的,所以我们要+1
  3. 这里{{}}代表的就是"",所以在v-text=""中,我们在内容里边就不需要再写{{}}了,直接写data值就行

栗子3

<div id='app'>
  <h1>{{ message }}</h1>
  <h1>{{ message.concat('!!!') }}</h1>
  <h1>{{ message? 'has message' : 'no message' }}</h1>
  下面这两个语句报错
  <h1>{{ var message = 'message' }}</h1>
  <h1>{{ if(message){return info} }}</h1>  
</div>
var app = new Vue({
  el : '#app',  // 绑定了上边的id='app'的元素
  data : {
    message : 'hello'
  }  
})
</div>

结果:

  hello
  hello!!!
  has message

第四五句报错

大胡子{{}}里边支持表达式

但不是所有的表达式都能放在里边,只有单个语句的可以,像var和if就不可以

如果想使用if语句的话,用三元运算符代替

栗子4

可以采用对象的形式传递多个数据

<div id="app2">
  <p>姓名 : {{ person.name }}</p>
  <p>性别 : {{ person.sex }}</p>
  <p>年龄 : {{ person.age }}</p>
</div>
var app2 = new Vue({
  el : "#app2",
  data : {
    person : {
      name : '小明',
      sex : '男',
      age : 8
    }
  }
})
</div>

结果:

 姓名 : 小明
 性别 : 男
 年龄 : 8

2. v-html

作用 : 操作元素中的HTML标签

v-text会将元素当成纯文本输出,v-html会将元素当成HTML标签解析后输出

栗子1

<div id="app3">
  {{ message }}
</div>
var app3 = new Vue({
  el : "#app3",
  data : {
    message : "![](img/1.jpg)"
  }
})
</div>

由此可见:{{}}/v-text不能解析html元素,只会照样输出

栗子2

<div id="app3" v-html="message"></div>
var app3 = new Vue({
  el : "#app3",
  data : {
    message : "![](img/1.jpg)"
  }
})
</div>

结果 : 成功显示图片


3. v-bind

作用 : 绑定标签属性,:后面是标签属性名

栗子1

<div id="app">
  <a href="" v-bind:href=" rel="external nofollow" hrefvalue">
    ![](source)
  </a>
</div>
var app = new Vue({
  el : "#app",
  data : {
    hrefvalue : 'http://www.baidu.com',
    source : 'img/1.jpg'
  }
})

</div>


栗子2

<div id="app2">
  <span v-bind:title = 'message'>
    鼠标悬停几秒钟查看此处动态绑定的提示信息!
  </span>
</div>
var app2 = new Vue({
  el : '#app2',
  data : {
    message : '页面加载于' + new Date()
  }
})
</div>

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

</div>

您可能想查找下面的文章:

相关文章

  • 2017-05-30Vue.js每天必学之内部响应式原理探究
  • 2017-05-30关于vuex的学习实践笔记
  • 2017-05-30使用vue.js编写蓝色拼图小游戏
  • 2017-05-30Vuex2.0+Vue2.0构建备忘录应用实践
  • 2017-05-30Vue.js基础知识汇总
  • 2017-05-30前端框架学习总结之Angular、React与Vue的比较详解
  • 2017-05-30Vuejs第十篇之vuejs父子组件通信
  • 2017-05-30分享一个精简的vue.js 图片lazyload插件实例
  • 2017-05-30vue2.0嵌套路由实现豆瓣电影分页功能(附demo)
  • 2017-05-30基于Vue2.0的分页组件

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • 简单谈谈Vue 模板各类数据绑定
    • vue入门
    • 详解Vue.js入门环境搭建
    • Vue.js 递归组件实现树形菜单(实例分享)
    • 如何写一个简单的vue移动端组件库
    • 详解Weex基于Vue2.0开发模板搭建
    • 详解vue的数据binding绑定原理
    • vuejs指令详解
    • 详解Vue监听数据变化原理
    • 利用Vue v-model实现一个自定义的表单组件

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有