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中过了一遍还不熟悉的东西的更多相关文章

  1. Vue 中的受控与非受控组件

    Vue 中的受控与非受控组件 熟悉 React 的开发者应该对"受控组件"的概念并不陌生,实际上对于任何组件化开发框架而言,都可以实现所谓的受控与非受控,Vue 当然也不例外.并且 ...

  2. Vue中应用CORS实现AJAX跨域,及它在 form data 和 request payload 的小坑处理

    基本概念部分(一):理解CORS 说道Vue的跨域AJAX,我想先梳理一遍CORS跨域,"跨域资源共享"(Cross-origin resource sharing),它是一个W3 ...

  3. vue中$watch源码阅读笔记

    项目中使用了vue,一直在比较computed和$watch的使用场景,今天周末抽时间看了下vue中$watch的源码部分,也查阅了一些别人的文章,暂时把自己的笔记记录于此,供以后查阅: 实现一个简单 ...

  4. vue系列---理解Vue中的computed,watch,methods的区别及源码实现(六)

    _ 阅读目录 一. 理解Vue中的computed用法 二:computed 和 methods的区别? 三:Vue中的watch的用法 四:computed的基本原理及源码实现 回到顶部 一. 理解 ...

  5. 在vue中使用jsx语法

    什么是JSX? JSX就是Javascript和XML结合的一种格式.React发明了JSX,利用HTML语法来创建虚拟DOM.当遇到<,JSX就当HTML解析,遇到{就当JavaScript解 ...

  6. 搞懂:MVVM模型以及VUE中的数据绑定数据劫持发布订阅模式

    搞懂:MVVM模式和Vue中的MVVM模式 MVVM MVVM : model - view - viewmodel的缩写,说都能直接说出来 model:模型,view:视图,view-Model:视 ...

  7. 对Vue中的MVVM原理解析和实现

    对Vue中的MVVM原理解析和实现 首先你对Vue需要有一定的了解,知道MVVM.这样才能更有助于你顺利的完成下面原理的阅读学习和编写 下面由我阿巴阿巴的详细走一遍Vue中MVVM原理的实现,这篇文章 ...

  8. Vue中Object和Array数据变化侦测原理

    在学完Vue.js框架,完成了一个SPA项目后,一直想抽时间找本讲解Vue.js内部实现原理的书来看看,经过多方打听之后,我最后选择了<深入浅出Vue.js>这本书.然而惭愧的是,这本书已 ...

  9. vue中使用stompjs实现mqtt消息推送通知

    最近在研究vue+webAPI进行前后端分离,在一些如前端定时循环请求后台接口判断状态等应用场景用使用mqtt进行主动的消息推送能够很大程度的减小服务端接口的压力,提高系统的效率,而且可以利用mqtt ...

随机推荐

  1. HDU 6228 - Tree - [DFS]

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6228 Time Limit: 2000/1000 MS (Java/Others) Memory Li ...

  2. python-----实现接口自动化测试(实例4)

    实现接口自动化测试1.读取case---从测试用例Excel表格中读取接口请求数据2.调用接口---发送请求获取实际结果3.校验结果---实际结果与预期结果对比4.结果写入表格---将实际结果与测试状 ...

  3. wpf之WrapPanel与StackPanel

    WrapPanel: WrapPanel布局面板将各个控件从左至右按照行或列的顺序罗列,当长度或高度不够是就会自动调整进行换行.他有三个属性 Orientation——根据内容自动换行,ItemHei ...

  4. [daily][samba] smbclient使用

    用的也不是太明白,反正凑合用吧. 在用之前,只得到了两个信息,1:ip 192.168.30.9.    2:可以免密登录. 1.  用这个命令看一看,主要是找到这个目录:Anonymous ┬─[t ...

  5. 在dbgrideh中允许选择多行,如何知道哪些行被选中

    是个BOOKMARK类型的属性. SelectedRows: TBookmarkList procedure TForm1.Button1Click(Sender: TObject); var i, ...

  6. 九九乘法表python3写入文件中

    写入文件代码如下: with open("e:\\test01.txt","w+",encoding="utf-8") as wq: for ...

  7. 文件批量scp分发脚本

    #!/bin/bash SERVERS="172.17.xx.y 172.17.pp.mm" PASSWORD=机器登录密码 auto_ssh_copy_file() { expe ...

  8. elasticsearch中文分词器ik-analyzer安装

    前面我们介绍了Centos安装elasticsearch 6.4.2 教程,elasticsearch内置的分词器对中文不友好,只会一个字一个字的分,无法形成词语,别急,已经有大拿把中文分词器做好了, ...

  9. kafka5 编写简单生产者

    一 客户端 1.打开eclipse,新建maven项目(new-->other-->Maven Project-->Artifact Id设为mykafka). 2.配置Build ...

  10. Python3学习之路~3.3 内置函数

    Python内置函数表: 内置参数详解:https://docs.python.org/3/library/functions.html?highlight=built#ascii 用法: #Auth ...