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. ubuntu汉化

    寻找 Simplified Chinese,点击下面的apply 回到这里在最下面找到刚刚安装的语言,是灰色的,左键点击,将它拖到最上面,点击应用到整个系统,配置完成.重启系统就变成中文了. 晚上不要 ...

  2. Lombok安装及使用

    为什么要使用Lombok: 虽然一般的IDE(eclipse,Intellij)都有自动生成代码的功能,如:生成setter,getter,toString,equels,hashcode等.但是如果 ...

  3. webstorm 智能提示忽略大小写

    setting-Editor-General-Code Completion里的 Case sensitive completion: 可以设置只第一个字母敏感.完全敏感或者不敏感. 选择none.. ...

  4. jquery键盘事件

    场景:当我们遇到onclick按钮事件时需要按回车执行时就用到了键盘监听事件 例如:<button id="sign_in_button" class="btn b ...

  5. postman客户端的安装与使用

    安装 首先下载蓝灯,为FQ做准备 登录github,输入https://github.com/getlantern/lantern,找到下载链接下载 安装并成功启动蓝灯 登录谷歌浏览器的应用市场,搜索 ...

  6. java JDBC (三) 修改

    package cn.sasa.demo3; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Pr ...

  7. 【Python全栈-后端开发】Django入门基础

    Django基础知识 一. 什么是web框架? 框架,即framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构,使用框架可以帮你快速开发特定的系统,简单地说,就是你用别人搭建好的 ...

  8. linux 内核启动流程分析,移植

    分析 linux-2.6.22.6 内核启动流程 移植 linux-3.4.2 到 JZ2440 开发板 Linux内核源码百度云链接: https://pan.baidu.com/s/1m1ymGl ...

  9. es中对mapping的理解

    (1)往es里面直接插入数据,es会自动建立索引,同时建立type以及对应的mapping (2)mapping中就自动定义了每个field的数据类型 (3)不同的数据类型(比如说text和date) ...

  10. 1、 LwIP协议栈规范翻译——简介

    1.简介 在过去几年中,计算机和计算机支持设备接之间的互联到无线网络日趋增加.计算机已经越来越无缝的集成在了日常的设备且价格也在下降.同时,无线网络技术例如蓝牙[HNI+98]和IEEE802.11b ...