美文网首页
vue日常指令总结

vue日常指令总结

作者: June_Done | 来源:发表于2019-08-27 16:58 被阅读0次
  • 计算属性:可以使用 methods 来替代 computed,效果上两个都是一样的,但是 computed 是基于它的依赖缓存,只有相关依赖发生改变时才会重新取值。而使用 methods ,在重新渲染的时候,函数总会重新调用执行。
  • v-model :数据双向绑定,常用于表单,用来在 input、select、textarea、checkbox、radio 等表单控件元素上创建双向数据绑定,根据表单上的值,自动更新绑定的元素的值。
  • v-model.number:可以让其类型为number。
  • v-model.trim:去除首尾空格。
  • v-model.lazy:可以使用 .lazy 懒加载修饰符,让其只在 change 事件中再加载输入框中的数据。
    input v-model的双向绑定,如下:
// 子组件 w-input.vue  
<template>
    <input type="text" :value="value" @input="handleInput"> 
</template>
export default {
    props:['value'],
   methods:{
      handleInput(e){
           this.$emit('input', e.target.value)
      }
    }
}
  1. :value 将 该input框的value值和从父元素传入的value值做绑定(父元素中的value变化导致input框的value值变化)
  2. @input 使用emit 调用父元素的input事件,并将event.target.value(也就是这个input框的value值)传过去
// 父组件
<w-input v-model="value"></w-input>
// 解析v-model: argument[0]是子组件$emit传出来的e.target.value
<w-input :value = value @input = "value = getval"></w-input>
export default {
    data:{
      return{
          value:'123'
      }
    },
    methods:{
        getval:function(v){
            this.value = v
        }
    }
 }

当组件中子元素调用父元素的Input方法时,相当于调用了 getval($event.target.value) 修改了父元素的val值
还有一些其他的功能:

// 子组件 w-input.vue  
<template>
    <input type="checkbox" :value="value1" @input="handleInput"> 
</template>
export default {
  model:{
      prop:'value1',
      event:'change'
   },
   props:['value1'],
   methods:{
      handleInput(e){
           this.$emit('change', e.target.value)
      }
    }
}

  • v-on:用于绑定html事件,缩写:@click
  • v-bind:用于属性绑定,缩写 :“:”
  • watch: Vue 实例将会在实例化时调用 $watch(),遍历 watch 对象的每一个属性。(我们可以通过 watch 来响应数据的变化)。
  • 组件data:组件中的data必须是个函数,因此每个实例可以维护一份被返回对象的独立的拷贝。
  • :class的写法:
<div :class="{active:isActive}"></div>  
<div :class="[ isActive ? 'active' : ' ' ]"></div>   //或者
<div :class="[{active:isActive}]"></div>      //或者

data:{
    isActive:false;
  }
  • v-text:v-text和{{}}的作用相同,且在网速慢或JS报错时v-text直接不显示,可以避免尴尬。
<p id="test" v-text="'我叫'+student.name+',今年'+student.age+'岁啦'"></p>
<!--解析结果 - START-->
<p>我叫11,今年24岁啦</p>
<!--解析结果 - END-->
<script type="text/javascript">
  var obj = new Vue({
    el : "#test",
    data : {
      student : {
        name : "11",
        age : 24
      }
    }
  });
</script>
  • v-html指令,传递HTML标签:
<div id="test">
  <p v-text="student.name"></p>
  <p v-text="student.image"></p>
  <p v-html="student.name"></p>
  <p v-html="student.image"></p>
</div>
<!--解析结果 - START-->
<div>
  <p>傻屌</p>
  <p><img src='shadiao.jpg'/></p><!--原样输出了文字-->
  <p>傻屌</p>
  <p>图片</p><!--正确显示了图片-->
</div>
<!--解析结果 - END-->
<script type="text/javascript">
  var obj = new Vue({
    el : "#test",
    data : {
      student : {
        name : "傻屌",
        image : "<img src='shadiao.jpg'/>"
      }
    }
  });
</script>
  • v-pre指令:跳过某元素和他的子元素的编译,可以用来显示原始Mustache标签。

  • v-cloak指令:使某元素保持某种指定行为,直到与该元素相关的实例编译结束。

  • v-once指令:只渲染元素和组件一次,之后重新渲染,该元素和组件均会被视作静态内容跳过。

<style type="text/css">
  [v-cloak]{display:none;}
</style>
<div id="test">
  <p v-pre>{{one}}</p><!--直接显示:{{one}}-->
  <p v-cloak>{{two}}</p><!--obj编译完成后才显示:二号-->
  <p v-once>{{three}}</p><!--始终显示:三号-->
</div>
<script type="text/javascript">
  var obj = new Vue({
    el : "#test",
    data : {
      one : "一",
      two : "二",
      three : "三"
    }
  });
  setTimeout("obj.three = '变一下'",1000);
</script>

参考:https://www.cnblogs.com/lynshxs/p/9890770.html

相关文章

  • vue日常指令总结

    计算属性:可以使用 methods 来替代 computed,效果上两个都是一样的,但是 computed 是基于...

  • vue面试相关

    javascript面试总结 谈谈你对MVVM开发模式的理解 Vue 有哪些指令? 简述Vue的响应式原理 Vue...

  • 实用的Vue自定义指令总结

    本文总结了下面这些实用的 Vue 自定义指令 1.v-copy:复制粘贴指令 2.v-longpress:长按指令...

  • 2018-09-11

    vue第一天总结 1.下载并且安装vue.js,输入指令 upm install vue,下载成功之后出现文件即...

  • vue入门6---vue基本指令、自定义指令、插件

    一、vue常用指令概览 二、vue自定义指令 注册全局指令Vue.directive('my-directive'...

  • 2018-07-21

    ## 经典bug:1.模板引擎的渲染## 难点:### 0.vue总结#### 指令:```jsVue.direc...

  • 面试前的总结-vue篇

    总结一些vue的面试题吧,为了年后的面试作准备。 vue指令 vue的生命周期 computed 和watch的区...

  • vue各种指令总结

    1.v-text 该指令可以渲染文本 在标签属性位置上写上 v-text ="属性名" 和插值表达式区别是...

  • vue directives指令总结

    Vue指令和Vue组件之间的关系 很多时候,对于初学者来说,看完指令的使用会发现组件的使用和指令的自定义有几分相似...

  • Git Flow 最佳实践笔记

    阅读了Vincent Driessen的Git最佳实践模式,这里对日常操作的指令加以总结记录。 常用指令 Feat...

网友评论

      本文标题:vue日常指令总结

      本文链接:https://www.haomeiwen.com/subject/dfeujctx.html