Vue基础知识总结 3:vue常用标签

Vue基础知识总结 3:vue常用标签

🍅 作者简介:哪吒,CSDN2021博客之星亚军🏆、新星计划导师✌、博客专家💪

🍅 哪吒多年工作总结:Java学习路线总结,搬砖工逆袭Java架构师

🍅 关注公众号【哪吒编程】,回复1024,获取Java学习路线思维导图、大厂面试真题、加入万粉计划交流群、一起学习进步

目录

一、vue常用标签简介

1、v-for和@click实现点击赋予红色效果

2、合并两个字符串

3、计算属性的复杂操作

4、var没有块级作用域,let有块级作用域

5、const 常量的定义

6、v-on的参数问题

7、v-on修饰符

8、v-if

9、v-show

10、v-for遍历对象

11、哪些数组的方法是响应式的

二、购物车综合案例

1、index.html

2、index.js

3、style.css

4、实现效果

一、vue常用标签简介

1、v-for和@click实现点击赋予红色效果

Title

  • v-bind:class="{active:currentIndex == index}"

    @click="liClick(index)">{{item}}

2、合并两个字符串

Title

{{fullName}}

3、计算属性的复杂操作

Title

{{es62}}

4、var没有块级作用域,let有块级作用域

Title

{{message}}

5、const 常量的定义

6、v-on的参数问题

Title

7、v-on修饰符

stop - 调用 event.stopPropagation(),停止冒泡。prevent - 阻止默认事件修饰符capture - 添加事件侦听器时使用 capture 模式。self - 只能在event.target是当前元素自身时触发处理函数{keyCode | keyAlias} - 只当事件是从特定键触发时才触发回调。native - 监听组件根元素的原生事件。once - 使事件只能被触发一次left - (2.2.0) 只当点击鼠标左键时触发。right - (2.2.0) 只当点击鼠标右键时触发。middle - (2.2.0) 只当点击鼠标中键时触发。passive - (2.3.0) 以 { passive: true } 模式添加侦听器

8、v-if

Title

注:通过key=username解决input复用问题,input复用机制是vue底层为了缓存而制定的策略。

9、v-show

10、v-for遍历对象

Title

  • {{item}}

  • {{key}}-{{value}}

key的作用主要是为了高效的更新虚拟DOM。

11、哪些数组的方法是响应式的

Title

  • {{item}}

非响应式“云芝”写入失败。

响应式,“云芝”写入成功

二、购物车综合案例

需求分析:通过动态加载数据,价格格式化展示,数量可增可减,可移除购物车,可清空购物车。

1、index.html

Title

名字 年龄 价格 数量 技能 操作
{{item.id}} {{item.name}} {{item.age}} {{item.price | showPrice}}

{{item.count}}

{{item.skill}}

总价格:{{totalPrice | showPrice}}

购物车为空

2、index.js

const app = new Vue({

el: '#app',

data: {

girls: [

{

id: 1,

name: '比比东',

age: 18,

count: 1,

skill: '不死之身',

price: 100.00

},{

id: 2,

name: '千仞雪',

age: 20,

count: 1,

skill: '天使圣剑',

price: 25.00

},{

id: 3,

name: '美杜莎',

age: 17,

count: 1,

skill: '美杜莎的凝望',

price: 19.00

},{

id: 4,

name: '云韵',

age: 25,

count: 1,

skill: '风之极陨杀',

price: 1999.99

},{

id: 5,

name: '雅妃',

age: 21,

count: 1,

skill: '红衣诱惑',

price: 68.00

}

]

},

methods :{

increment(index){

this.girls[index].count++

},

decrement(index){

this.girls[index].count--

},

removeHandler(index){

this.girls.splice(index, 1)

}

},

computed: {

totalPrice(){

let totalPrice = 0;

for(let i=0;i

totalPrice += this.girls[i].price * this.girls[i].count;

}

return totalPrice;

}

},

filters: {

showPrice(price) {

return '$' + price.toFixed(2)

}

}

})

3、style.css

table {

border: 1px solid #e9e9e9;

border-collapse: collapse;

border-spacing: 0;

}

th,td {

padding: 8px 16px;

border: 1px solid #e9e9e9;

text-align: left;

}

th {

background-color: #f7f7f7;

color: #5c6b77;

font-weight: 600;

}

4、实现效果

通过移除,清空购物车。

🍅 作者简介:哪吒,CSDN2021博客之星亚军🏆、新星计划导师✌、博客专家💪

🍅 哪吒多年工作总结:Java学习路线总结,搬砖工逆袭Java架构师

🍅 关注公众号【哪吒编程】,回复1024,获取Java学习路线思维导图、大厂面试真题、加入万粉计划交流群、一起学习进步

上一篇:Vue知识体系总结 2:Vue动态绑定v-bind

下一篇:Vue知识体系总结 4:Vue组件化开发

关注公众号,备注1024,获取Java学习路线思维导图、加入万粉计划交流群

相关推荐

好梦易醒是什么原因(为什么美梦总是容易醒来?) 365体育旗下

好梦易醒是什么原因(为什么美梦总是容易醒来?)

[交流]如何跨服买装备省米,求解答 365天免费观看完整版电影

[交流]如何跨服买装备省米,求解答

怎样造出好房子(上) 365体育旗下

怎样造出好房子(上)