[vue]vue条件渲染v-if(template)和自定义指令directives

条件渲染: v-if/template

<div id="app">
    <h1>v-show: display: none</h1>
    <div v-show="false">yes</div>
    <!--<div v-else>no</div>-->

    <h1>v-for: 判断1</h1>
    <div v-if="false">yes</div>
    <div v-else>no</div>

    <h1>判断2</h1>
    <div v-if="msg">yes</div>
    <div v-else>no</div>

    <h1>判断3: 不能这样写, 正确做法是v-if和v-else之间无其他内容</h1>
    <div v-if="msg">yes</div>
    <div>somethings</div>
    <div v-else>no</div>

    <h1>判断4: 如果v-if和v-else必须要有其他内容: 建议template实现</h1>
    <div v-if="true">
        <div>yes</div>
        <div>somethings</div>
    </div>
    <div v-else>no</div>

    <h1>判断5</h1>
    <template v-if="true">
        <div>yes</div>
        <div>somethings</div>
    </template>
    <div v-else>no</div>
</div>
<script src="node_modules/vue/dist/vue.js"></script>
<script>
    let vm = new Vue({
        el: "#app",
        data: {
            msg: false,
        }
    })
</script>

自定义指令directives

an official order or instruction

- vue有 1,模板类  2,表单类 3,事件类的各种指令 4.还可以自定义指令

<div id="app">
    <h1>自定义指令: directives</h1>
    <input type="text" v-focus>
</div>

<script src="node_modules/vue/dist/vue.js"></script>
<script>
    let vm = new Vue({
        el: "#app",
        data: {
            msg: "maotai",
        },
        directives: {
            focus: {
                inserted: function (el) {
                    el.focus();
                }
            }
        }
    })
</script>

原文地址:https://www.cnblogs.com/iiiiiher/p/9025532.html

时间: 2024-10-03 23:05:14

[vue]vue条件渲染v-if(template)和自定义指令directives的相关文章

Vue的条件渲染详解

Vue的条件渲染 v-if.v-else.v-else-if以及v-show的用法 v-if的渲染方式: 会确保在切换过程中条件块内的事件监听器和子组件适当地被销毁和重建: 只有当条件第一次变为真时,才会开始渲染条件块: 切换开销比v-show高: v-show的渲染方式: 不管初始条件是什么,元素总是会被渲染: 只是简单地基于 CSS 进行切换: v-show的初始渲染开销比v-if高: 如果需要频繁的切换,则使用v-show: 如果运行时条件很少改变,则用v-if: <!DOCTYPE ht

VUE:条件渲染和列表渲染

条件渲染 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <!-- 1.条件渲染指令 v-if v-else 移除标签 v-show 通过样式隐藏 2.比较 v-if 与v-show 如果需要频繁切换 v-show 较好 --> <div id="

【vue】条件渲染 v-if v-else

1.Vue 提供了一种方式来表达“这两个元素是完全独立的,不要复用它们”.只需添加一个具有唯一值的 key 属性即可: <template v-if="loginType === 'username'"> <label>Username</label> <input placeholder="Enter your username" key="username-input"> </templa

vue.js 条件渲染

高清大图下载

Vue.js 自定义指令

自定义指令 除了默认设置的核心指令(如:v-model,v-for),Vue.js也允许注册自定义指令,自定义指令提供一种机制将数据的变化映射为DOM行为 Vue.js用 Vue.directive(id, definition)方法注册一个全局自定义指令,它接收两个参数:指令ID和定义对象.也可以用组建的directives选项注册一个局部自定义指令 例如:聚焦一个 input 元素 <div id="directive-focus">     <input v-f

Vue.js学习 Item13 – 指令系统与自定义指令

基础 除了内置指令,Vue.js 也允许注册自定义指令.自定义指令提供一种机制将数据的变化映射为 DOM 行为. 可以用 Vue.directive(id, definition) 方法注册一个全局自定义指令,它接收两个参数指令 ID 与定义对象.也可以用组件的 directives 选项注册一个局部自定义指令. 钩子函数 定义对象可以提供几个钩子函数(都是可选的): bind:只调用一次,在指令第一次绑定到元素上时调用. update: 在 bind 之后立即以初始值为参数第一次调用,之后每当

vue.js实现内部自定义指令和全局自定义指令------directive

在Vue中,我们平时数据驱动视图时候,内部自带的指令有时候解决不了一些需求,这时候,Vue给我们一个很好用的东东 directive 这个单词是我们写自定义指令的关键字哦 之定义指令为我们提供了几个钩子函数,这时候你一定好奇什么是钩子函数,说简单点,就是集中表现状态 bind: 只调用一次,指令第一次绑定到元素时调用,用这个钩子函数可以定义一个在绑定时执行一次的初始化动作. inserted: 被绑定元素插入父节点时调用(父节点存在即可调用,不必存在于 document 中). update:

vue自定义指令的创建和使用

一.自定义指令的创建和使用 Vue自带的指令很多,v-for/v-if/v-else/v-else-if/v-model/v-bind/v-on/v-show/v-html/v-text...但是这些指令都是比较偏向于工具化,有些时候在实现具体的业务逻辑的时候,发现不够用,如何来自定义指令. 1.自定义指令①创建 new Vue({ directives:{ change:{ bind:function(){}, update:function(){}, unbind:function(){}

Vue API(directives) 自定义指令

前言:除了vue的内置指令以外,我们可以定义自定义指令.内置指令表相见:https://www.cnblogs.com/ilovexiaoming/p/6840383.html 我们定义一个最简单的 <script> export default { name: 'App', data(){ return{ yanse:'red' } }, // 所有自定义指令 directives:{ zzh(el,binding){ console.log(el); console.log(binding