您好,欢迎来到华佗小知识。
搜索
您的当前位置:首页Vue02基础语法-插值+过滤器+计算属性+计算属性

Vue02基础语法-插值+过滤器+计算属性+计算属性

来源:华佗小知识


努力是为了不平庸~


1.模板语法

html模板语法:这是一种基于字符串的模板技术,以字符串和数据为输入,通过用正则表达式将占位符替换为所需数据的方式,构建出完整的 HTML 字符串。

1.1 插值

        1.1.1 文本

使用{ {msg}}的形式,标签将会被替换成为数据对象(data)上msg属性值,当绑定的数据对象上的msg属性值发生变化时,插值处的值也会发生变化(双向绑定

        1.1.2 html

{ {}}的方式将数据处理为普通文本,如果要输出html,需要使用v-html指令

//在data中定义一个html属性,其值为html
data: {
    html:  '<input type="text" value="hello"/>'
}
//在html中取值
<span v-html="html"></span>

        1.1.3 属性

HTML属性中的值应使用v-bind指令。类型与jQuery中的$("#xxx").attr(propName, propVal)

//定义一个样式
<style>
.redClass {
    font-size: 30px;
    color: red;
}
</style>
//在data中定义一个属性,其值为上面定义的样式名
data: {
    red: 'redClass'
}
//在html使用v-bind指令设置样式
<p>设置之前:  aaaa</p>
<p>设置之后: <span v-bind:class="red">aaa</span></p>

以上结果在浏览器中可以看到相应的效果

        1.1.4 表达式

几种常见的表达式:

  • { {str.substr(0,6).toUpperCase()}}
  • { { number + 1 }}
  • { { ok ? 'YES' : 'NO' }} 三元运算符
  • <li v-bind:>我的Id是js动态生成的</li>

示例1:

//在html中加入元素,定义表达式
<span>{
  {str.substr(0,6).toUpperCase()}}</span>

//在data中加入一个属性,名为str与html中对应
data: {
    str: 'hello vue'
}

 查看效果:字符串被截取,并转换为大写

示例2:

<span>{
  { number + 1 }}</span>
//在data中加入一个属性,名为str与html中对应
data: {
    number: 10
}

在data中定义的number值将会被加1

示例3:

//这是一个三元运算,如果ok为true,表达式值为YES ,如果ok为false则表达式值为NO
<span>{
  { ok ? 'YES' : 'NO' }}</span>

//在data中加入一个属性,名为str与html中对应
data: {
    ok: true
}

 示例4:

//演示id属性绑定和动态赋值
<p>
    <input type="text" v-bind:id="bookId"/></br>
    <!--动态生成Id-->
    <input type="text" v-bind:id="'bookList_' + id"/>
</p>
data: {
    bookId: 'book001',
    id: 'book002'
}

该示例可以通过开发者工具查看生成的id属性值。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo0.cn 版权所有 湘ICP备2023017654号-2

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务