VUE知识点总结---更新中

如何理解前端渲染?

把数据填充到HTML标签中,通过前端渲染,生成静态HTML内容

前端渲染方式

  • 原生JS拼接字符串
  • 使用前端模板引擎
  • 使用vue模板语法

VUE模板语法

声明式渲染 / 编程

模板的结构和最终显示的效果基本一致

<div id="app">
  {{ message }}
div>
var app = new Vue({
  el: '#app',
  data: {
    message: 'Hello Vue!'
  }
})

1 差值表达式 {{ }}

插值表达式存在的问题:“闪动”

使用v-cloak指令

解决该问题的原理:先隐藏,替换好值之后再显示最终的值

2 指令 v-

  • 本质就是自定义属性

2.1 数据绑定指令

数据绑定:将数据填充到标签中

  • v-text 填充纯文本

      相比插值表达式更加简洁
    
  • v-html 填充HTML片段

      存在安全问题
      本网站内部数据可以使用,来自第三方的数据不可以用
    
  • v-pre 填充原始信息

      显示原始信息,跳过编译过程(分析编译过程)
    
  • v-once 只编译一次

      显示内容之后不再具有响应式功能
    

2.2 双向数据绑定指令

v-model指令用法


MVVM设计思想

	M(model)
	V(view)
	VM(View-Model)

VUE知识点总结---更新中_第1张图片

3 事件绑定v-on

v-on指令用法

<input type='button'  v-on:click='num++'/>

简写形式@

<input type='button' @click='num++'/>

3.1 事件修饰符
.stop 阻止冒泡

<a v-on:click.stop="handle">跳转a>

.prevent 阻止默认行为

<a v-on:click.prevent="handle">跳转a>

3.2 按键修饰符
.enter 回车键

<input v-on:keyup.enter='submit'>

3.3 自定义按键修饰符
全局 config.keyCodes 对象

Vue.config.keyCodes.f1 = 112

4 属性绑定v-bind

v-bind 指令被用来响应地更新 HTML 属性
v-bind 指令用法

  <a v-bind:href='url'>跳转a>

缩写形式:

<a :href='url'>跳转a>
绑定class样式
 <div v-bind:class="{ active: isActive }">div>
 <div v-bind:class="[activeClass, errorClass]">div>
绑定style样式
 <div v-bind:style="{ color: activeColor, fontSize: fontSize }">div>
 <div v-bind:style="[baseStyles, overridingStyles]">div>

5 分支循环结构

分支结构v-if
v-if
v-else
v-else-if
v-show
  • v-if与v-show的区别

     v-if控制元素是否渲染到页面
     v-show控制元素是否显示(已经渲染到了页面)
    
循环结构v-for
v-for遍历数组list
<li v-for='item in list'>{{item}}li>
<li v-for='(item,index) in list'>{{item}} + '---' +{{index}}li>
v-for遍历对象object
<div v-for='(value, key, index) in object'>div>

key的作用:帮助Vue区分不同的元素,从而提高性能

<li :key='item.id' v-for='(item,index) in list'>{{item}} + '---' {{index}}li>

Vue常用特性

表单操作

基于Vue的表单操作

Input  		单行文本
textarea  	多行文本
select  	下拉多选
radio  		单选框
checkbox 	多选框

表单域修饰符

number:转化为数值
trim:去掉开始和结尾的空格
lazy :  将input事件切换为change事件

例如:

<input v-model.number="age" type="number">

自定义指令Vue.directive()

原因:内置指令不满足需求时
自定义指令的语法规则

获取元素焦点的指令
<input type="text" v-focus>
 
Vue.directive('focus' {
    inserted: function(el) {
      // 获取元素的焦点
      el.focus();
    }
  }) 

计算属性

侦听器

过滤器

自定义过滤器

 Vue.filter(‘过滤器名称’, function(value){
     // 过滤器业务逻辑
  })

过滤器的使用

{{msg | 过滤器名称}}

局部过滤器

filters:{
     capitalize: function(){}
  } 

生命周期

指VUE实例所产生的整个过程

你可能感兴趣的:(VUE框架,VUE,Vue.js,VUE知识点)