Vue基础篇-模板语法

1.插值

(a)文本(双大括号)

<p>{{ message }}</p>

(b)html元素(v-html指令)

<div id="app"> <p v-html="spanHTML"></p> </div>
    
<script>
    new Vue({
      el: '#app',
      data: {
        spanHTML: '<span>显示文本内容</span>'
      }
    })
</script>

(c)属性(v-bind指令)

<div id="app">
  <div v-bind:class="classVal"> 测试文本 </div>
</div>
    
<script>
    new Vue({
        el: '#app',
        data:{
          classVal: "redColor"
        }
    });
</script>

2.指令

v-text 更新textContent。(直接用双大括号也是可行的)
v-html 输出真正的HTML。(一般输出真正html直接用组件更方便)
v-pre 跳过这个元素和它的子元素解析和渲染。(时显时不显操作可以用)
v-cloak 这个指令是用来保持在元素上直到关联实例结束时进行编译。(会出现闪烁的可能)
v-once 关联的实例只会渲染一次。(一般后边指定跟着组件)
v-if 可以实现条件渲染。(销不销毁这个元素的操作)
v-else 是搭配v-if使用的。
v-else-if 充当v-if的else-if块,可以链式的使用多次。(更方便实现switch-case语句)
v-show 根据条件展示元素。(实现原理是display:none所以只是隐藏,没有销毁)
v-for 根据遍历数组来进行渲染。(三参数含义:值value,键名key,下标index)
v-bind 动态的绑定一个或者多个特性。(常用的是绑定class,style,href)
v-model 表单上创建双向数据绑定。(登录或者表单提交用的很多)
v-on 监听dom事件。

 (a)参数

v-bind:常用的是直接绑定数据对象,其简写方式例子中会见

<div id="app">
    <div :class="classObject">123456789</div>
</div>

<script>
    var app = new Vue({
        el: '#app',
        data: {
            classObject:{
                'isActive': false,
                'redColor': true
            }           
        }
    })
</script>

(b)修饰符

v-model

.lazy  默认情况下,v-model同步输入框的值和数据。可以通过这个修饰符,转变为在change事件再同步

.number  自动将用户的输入值转化为数值类型

.trim 自动过滤用户输入的首尾空格(常用)

v-on

.stop  阻止事件继续传播(常用)

.prevent  事件不再重载页面(常用)

.once   事件将只会触发一次(常用)

.self   只当在 event.target 是当前元素自身时触发处理函数

.passive  告诉浏览器你不想阻止事件的默认行为

.capture   使用事件捕获模式,即元素自身触发的事件先在此处处理,然后才交由内部元素进行处理

3.用户输入

v-model 指令用来在 input、select、text、checkbox、radio 等表单控件元素上创建双向数据绑定,根据表单上的值,自动更新绑定的元素的值。

<div id="app">
    <p>{{ message }}</p>
    <input v-model="message">
</div>
    
<script>
    new Vue({
      el: '#app',
      data: {
        message: '显示文本'
      }
    })
</script>

4.过滤器

(a)管道符“ | ”实现过滤语法书写;

(b)可串联,可单独书写,例如:{{value | filterA | filterB}} ;

(c)允许自定义过滤函数;

<div id="app">
  {{ value | filterA(1,2) }}
</div>
    
<script>
    new Vue({
      el: '#app',
      data: {
        value: '显示文本'
      },
      filters: {
        filterA: function (val,num1,num2) {
          return val.subString(num1,num2)
        }
      }
    })
</script>

(d)自定义过滤器函数允许有参数,如上所示(值,1参,2参);

(e)vue自带过滤器

capitalize

首字母大写
uppercase 全部大写
lowercase 全部小写
currency 输出金钱以及小数点
pluralize 输出复数的形式
debounce 延期执行函数
limitBy 在 v-for 中使用,限制数量
filterBy 在 v-for 中使用,选择数据
orderBy 在 v-for 中使用,排序

前端工作不好做,具有耐心不用说。

加油学习别放弃,勤奋就是可补拙。

猜你喜欢

转载自blog.csdn.net/qq_35892039/article/details/83861852