zoukankan      html  css  js  c++  java
  • Vue基础知识记录

    v-on的事件修饰符

    v-on 提供了很多事件修饰符来辅助实现一些功能。事件修饰符有如下:

    • .stop 阻止冒泡。本质是调用 event.stopPropagation()。

    • .prevent 阻止默认事件。本质是调用 event.preventDefault()。

    • .capture 添加事件监听器时,使用 capture 模式。

    • .self 只有当事件是从侦听器绑定的元素本身触发时,才触发回调。

    • `.{keyCode | keyAlias} 只当事件是从侦听器绑定的元素本身触发时,才触发回调。

    • `.native 监听组件根元素的原生事件。

    • 阻止默认行为:
    • <!-- 阻止表单中submit的默认事件 -->
    • <form @submit.prevent action="http://www.baidu.com">
    • <!-- 执行自定义的click事件 -->
    • <input type="submit" @click="mySubmit" value="表单提交">
    • </form>

    v-cloak

    v-cloak:保持和元素实例的关联,直到结束编译后自动消失。

    这个指令和CSS 规则一起用的时候,可以隐藏未编译的标签直到实例准备完毕。比如说,在网络很慢的情况下,通过v-cloak隐藏元素,当加载完毕后,再显示出来。

    <!DOCTYPE html>
    <html lang="en">
    
    <head>
      <meta charset="UTF-8">
      <title>Title</title>
      <script src="vue.js"></script>
      <style>
    
        /*网络很慢时,在span上加上 v-cloak和css样式控制以后,浏览器在加载时会先把span隐藏起来。
        直到 Vue实例化完毕以后,v-cloak 会自动消失,那么对应的css样式就会失去作用,最终将span中的内容呈现给用户 */
        [v-cloak] {
          display: none;
        }
      </style>
    </head>
    
    <body>
      <div id="div1">
        <span v-cloak>{{name}}</span>
    
      </div>
    </body>
    
    <script src="vue.js"></script>
    <script>
      new Vue({
        el: '#div1',
        data: {
          name: 'hello1 smyhvae22'
        }
      });
    </script>
    
    </html>

    v-if和v-show的区别

    v-ifv-show都能够实现对一个元素的隐藏和显示操作。但是v-if是添加/删除DOM元素,而v-show是在这个元素上添加/移除style="display:none"属性

    v-show 不支持 <template> 元素,也不支持 v-else

    v-if 有更高的切换开销,而 v-show 有更高的初始渲染开销。因此,如果需要非常频繁地切换,则使用 v-show 较好;如果在运行时条件很少改变,则使用 v-if 较好。

    当 v-if 与 v-for 一起使用时,v-for 具有比 v-if 更高的优先级。

    当它们处于同一节点,v-for 的优先级比 v-if 更高,这意味着 v-if 将分别重复运行于每个 v-for 循环中。

    而如果你的目的是有条件地跳过循环的执行,那么可以将 v-if 置于外层元素 (或 <template>)上

    可以把一个 <template> 元素当做不可见的包裹元素,并在上面使用 v-if。最终的渲染结果将不包含 <template> 元素

    似于 v-if,你也可以利用带有 v-for 的 <template> 渲染多个元素

    你也可以用 of 替代 in 作为分隔符,因为它是最接近 JavaScript 迭代器的语法:

    <div v-for="item of items"></div>

    尽可能在使用 v-for 时提供 key,除非遍历输出的 DOM 内容非常简单,或者是刻意依赖默认行为以获取性能上的提升。

  • 相关阅读:
    Java 源码刨析
    qemu-guest-agent详解
    Java 源码刨析
    NTP服务解析
    virsh常见命令笔记
    Ansible之playbook
    ansible模块详解
    HashMap详解
    Mysql-Incorrect string value
    web开发中前后端传值
  • 原文地址:https://www.cnblogs.com/zz-zrr/p/8728300.html
Copyright © 2011-2022 走看看