VUE中过了一遍还不熟悉的东西
1.computed/watch/和methods
computed是依赖于数据来变动的,有缓存,当不需要缓存的时候就用方法,watch不建议乱用,当有异步请求的时候就用watch
写法一样


2.watch
3.slot
4.添加属性
5.过滤器


<template> <div class="hello"> <hr> <p style="color: red;font-size: 23px">计算属性,过滤器</p> <p v-for="item in money"> <span>{{item.money|dollor(item.money)}}</span> </p> <p> <span>计算属性反转--》</span> <span>{{bb}}</span> <br> <span>这个是直接在魔板里面--》魔板里面最好不要这样写因为魔板里面尽可能的简单所以呢最好用计算属性或者方法</span> <span>{{msg.split('').reverse().join('')}}</span> </p> <p>方法反转: "{{ reversedMessage() }}"</p> <hr> <p style="color: red;font-size: 23px">keep-alive内置组件,比如一个列表打开详情,返回列表,不可能每次都去请求吧,这个组件相当于做了缓存,列表打开详情就用这个</p> <p style="color: red;font-size: 23px">面试题why data必须是一个函数(官网有,return是一个对象,避免冲突,避免点击这个那个绑定的数据也跟着变化)</p>
<hr> <p>关于slot 内容分发,我的 理解就是匿名插槽你没传递东西给这个组件的话 它默认就会展示slot里面的内容,如果你传了就会覆盖这个内容,实名插槽的话,你传递的是哪个name它就显示哪个</p>
<hr> <p>设置属性,看代码</p> <a @click="chose(value)" href="#" :checked="ischecked" style="width: 5px;height: 5px;border: 1px solid red;display: block"></a> </div></template>
<script>export default { name: 'HelloWorld', data () { return { msg: '我是反转字符串', money:[ { name:'11', money:100 }, { name:'112', money:678 }
], ischecked:false } },// 过滤器,相当于一个钩子函数写法和methods:{}这种写法而不是函数 filters:{// 格式化人民币 dollor(money){// 这个是小数点后几位你自己定义 return '$'+money.toFixed(5) } },// 计算属性的东西,如果你不希望有缓存,请用方法来替代。// 对于任何复杂逻辑,你都应当使用计算属性。而不是在里面直接写、模板内的表达式非常便利,但是设计它们的初衷是用于简单运算的。 {{ message.split('').reverse().join('') }}这么写就违背了初衷 computed:{ // 计算属性的 getter bb(){ return this.msg.split('').reverse().join('') } }, methods: { reversedMessage() { return this.msg.split('').reverse().join('') }, chose(value){// vue中设置属性 if(typeof value.checked==='undefiend'){// 如果没有这个属性就设置这个属性 this.$set(value,'checked',this.ischecked=true) }else { this.ischecked=!this.ischecked } } }}</script>
<!-- Add "scoped" attribute to limit CSS to this component only --><style scoped>h1, h2 { font-weight: normal;}ul { list-style-type: none; padding: 0;}li { display: inline-block; margin: 0 10px;}a { color: #42b983;}</style>
VUE中过了一遍还不熟悉的东西的更多相关文章
- Vue 中的受控与非受控组件
Vue 中的受控与非受控组件 熟悉 React 的开发者应该对"受控组件"的概念并不陌生,实际上对于任何组件化开发框架而言,都可以实现所谓的受控与非受控,Vue 当然也不例外.并且 ...
- Vue中应用CORS实现AJAX跨域,及它在 form data 和 request payload 的小坑处理
基本概念部分(一):理解CORS 说道Vue的跨域AJAX,我想先梳理一遍CORS跨域,"跨域资源共享"(Cross-origin resource sharing),它是一个W3 ...
- vue中$watch源码阅读笔记
项目中使用了vue,一直在比较computed和$watch的使用场景,今天周末抽时间看了下vue中$watch的源码部分,也查阅了一些别人的文章,暂时把自己的笔记记录于此,供以后查阅: 实现一个简单 ...
- vue系列---理解Vue中的computed,watch,methods的区别及源码实现(六)
_ 阅读目录 一. 理解Vue中的computed用法 二:computed 和 methods的区别? 三:Vue中的watch的用法 四:computed的基本原理及源码实现 回到顶部 一. 理解 ...
- 在vue中使用jsx语法
什么是JSX? JSX就是Javascript和XML结合的一种格式.React发明了JSX,利用HTML语法来创建虚拟DOM.当遇到<,JSX就当HTML解析,遇到{就当JavaScript解 ...
- 搞懂:MVVM模型以及VUE中的数据绑定数据劫持发布订阅模式
搞懂:MVVM模式和Vue中的MVVM模式 MVVM MVVM : model - view - viewmodel的缩写,说都能直接说出来 model:模型,view:视图,view-Model:视 ...
- 对Vue中的MVVM原理解析和实现
对Vue中的MVVM原理解析和实现 首先你对Vue需要有一定的了解,知道MVVM.这样才能更有助于你顺利的完成下面原理的阅读学习和编写 下面由我阿巴阿巴的详细走一遍Vue中MVVM原理的实现,这篇文章 ...
- Vue中Object和Array数据变化侦测原理
在学完Vue.js框架,完成了一个SPA项目后,一直想抽时间找本讲解Vue.js内部实现原理的书来看看,经过多方打听之后,我最后选择了<深入浅出Vue.js>这本书.然而惭愧的是,这本书已 ...
- vue中使用stompjs实现mqtt消息推送通知
最近在研究vue+webAPI进行前后端分离,在一些如前端定时循环请求后台接口判断状态等应用场景用使用mqtt进行主动的消息推送能够很大程度的减小服务端接口的压力,提高系统的效率,而且可以利用mqtt ...
随机推荐
- Mac上的jdk
最近装jdk从网上找到的资料: 一.以前版本的Mac自带了的JDK6,安装在目录:/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/下.* JDK7 ...
- 洛谷 P1208混合牛奶【贪心】
题目描述 由于乳制品产业利润很低,所以降低原材料(牛奶)价格就变得十分重要.帮助Marry乳业找到最优的牛奶采购方案. Marry乳业从一些奶农手中采购牛奶,并且每一位奶农为乳制品加工企业提供的价格是 ...
- {python--GIL锁}一 介绍 二 GIL介绍 三 GIL与Lock 四 GIL与多线程 五 多线程性能测试
python--GIL锁 GIL锁 本节目录 一 介绍 二 GIL介绍 三 GIL与Lock 四 GIL与多线程 五 多线程性能测试 一 背景知识 ''' 定义: In CPython, the gl ...
- day12:装饰器的进阶
1,三元运算符:变量 = 条件返回True的结果 if 条件 else 条件返回false的结果:必须要有结果:必须要有if和else,只能是简单的情况. 2,传参包起来,星号打散 def outer ...
- 中位数&贪心
谁能想到基本算法就这么难呢?我想去冲省选,但是迟迟在这些地方 花时间 算是提升自己的思维算了. 这道题呢 答案其实很简单每个数在a的位置和在b的位置之差的累加/2即是答案为什么呢?考虑当前数字 要向后 ...
- selenium如何定位同级节点
场景:当定位某个元素时,发现所需要的元素在同级节点,可以用/following-sibling::* 方法(定位同级的第二位) 当定位统计节点的第二个定位相邻节点. 可以用/preceding ...
- java 集合(四)HashSet 与 LinkedHashSet
查看源码: HashSet底层new 了HashMap 哈希表的结构: Demo: package cn.sasa.demo2; import java.util.HashSet; import ja ...
- JavaScript学习笔记--语言工具的了解
基础学习,快速入门资料:网站 https://www.liaoxuefeng.com ,http://www.runoob.com/js/js-tutorial.html 笔记: 编程工具:SubLi ...
- js判断开始时间不能小于结束时间
function validTime(startTime,endTime){ var arr1 = startTime.split("-"); var arr2 = e ...
- javascript面向对象中继承实现?
面向对象的基本特征有:封闭.继承.多态. 在javascript中实现继承的方法: 1.原型链(prototype chaining) 2.call()/apply() 3.混合方式(prototyp ...