2-Vue指令v-text && v-html && v-bin

2019-05-06  本文已影响0人  波克比

一 : 指令的概念:

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

二 : 指令的语法:

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

三 : 具体指令

1. v-text

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

快捷方式 : {{}}

栗子1

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

结果:hello world

栗子2

结果:今天是2017年5月

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

这里v-text="",双引号并不是代表字符串,而是vue自定义的划定界限的符号。如果我们里边输出字符串,就要在里边再添加一对单引号。而且经测验,要想输出字符串,必须添加单引号,否则会报错

这里month默认是从0开始的,所以我们要+1

这里{{}}代表的就是"",所以在v-text=""中,我们在内容里边就不需要再写{{}}了,直接写data值就行

栗子3

结果:

hello

hello!!!

has message

第四五句报错

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

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

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

栗子4

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

结果:

姓名 : 小明

性别 : 男

年龄 : 8

补充一点:

用{{}}的弊端:当网速很慢或者下面的JavaScript写错时,会直接将{{message}}渲染到页面

而使用v-text="message" 如果出错是不显示的

所以在实际开发中用v-text比较多

2. v-html

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

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

栗子1

结果:输出代表图片名称的字符串,而不是将图片输出

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

栗子2

结果 : 成功显示图片

3.gif

注意 : 你的站点上动态渲染的任意 HTML 可能会非常危险,因为它很容易导致 XSS 攻击。请只对可信内容使用 HTML 插值,绝不要对用户提供的内容插值。

3. v-bind

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

栗子1

   

5.gif

栗子2

补充v-bind小例子

v-show

作用:通过判断,是否显示该内容。如果值为true,则显示。否则就隐藏。

语法:v-show=”判断表达式”

特点:元素会始终渲染在DOM中,只是被设置了display:none

举个栗子

运行结果 :

从中我们可以看出 :

v-show与否通过内联样式display:none来体现

这里可以给seen赋任何值,浏览器会根据转化后的值来判断是否显示

其中空数组和空对象会显示,undefined,null,0会隐藏,1等也会显示

-

转自作者:椰果粒

上一篇 下一篇

猜你喜欢

热点阅读