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

14天阅读挑战赛
努力是为了不平庸~

目录

1.模板语法

1.1 插值

        1.1.1 文本

        1.1.2 html

        1.1.3 属性

        1.1.4 表达式

1.2 指令:指令指的是带有“v-"前缀的特殊属性

        1.2.1 核心指令

1.2.1.1 v-if |v-else-if|v-else

 1.2.1.2 v-show

1.2.1.3 v-for

1.2.1.4 v-on|v-model|v-for

1.2.1.5 参数 v-bind:href,v-on:click

1.2.1.6 简写

2. 过滤器

2.1 局部过滤器

示例:

2.2 全局过滤器

3. 计算属性

示例: 使用计算属性,计算书本的总价定义测试数据,和计算属性,计算属性遍历书本记录,计算总价

关于var 与 let

4.监听属性

watch声明语法:

今天就分享到这里了,咱们下个章节再见!!!


1.模板语法

Vue.js 使用了基于 HTML 的模板语法,允许开发者声明式地将 DOM 绑定至底层 Vue 实例的数据。所有 Vue.js 的模板都是合法的 HTML ,所以能被遵循规范的浏览器和 HTML 解析器解析。vue将模板编译成虚拟dom,结合响应系统,Vue 能够智能地计算出最少需要重新渲染多少组件,并把 DOM 操作次数减到最少。

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属性值。

<
评论 51
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天蝎座的程序媛

你的鼓励是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值