zoukankan      html  css  js  c++  java
  • Vue 条件渲染

    vue 条件渲染,v-if ,v-show;这两个的值是true时候,dom中的元素都会渲染出来,当值为false的时候,if渲染的元素不会在dom中出现,show渲染的dom元素是style:display:none;两者有这样的区别,同时v-if else 两者使用的时候中间不能有其他的元素,否则会失效,例如在两个div中,一个div是v-if,另一个是else,在这两个div中都有input标签,当input标签发生change实际的时候,v-if的值由false变成true,如下面的例子:在这里邮箱显示的,当发生chang事件时候即方法hanleFinish执行,改变show的值,这里input必须加key值,值可以自定义,不然在邮箱里输入的值会在用户名的input上显示出来。

    <div v-if="show">
    用户名: <input type="text" key="one">
    </div>
    <div v-else>
    邮箱名: <input type="text" @change="hanleFinish" key="two">
    </div>

    <script>
    export default {
    props: ['list'],
    data ()
    {
    return {
    show:false,
    },
    methods: {
    hanleFinish(){
    this.show = true;
    }
    }, }
    </script>
    在vue组件和实例中都有$set方法,这样可以添加对象属性和属性值和更改数组的值
    例如:改变数组arry第二项为5,给obj对象添加属性company:三一,用这样的方法就可以改变添加。
    <button @click="changeItem">change</button>
    <template v-for="item of arry">
    <ul ><li>{{item}}</li></ul>
    </template>
    <template v-for="(item,key) of obj">
    <p >{{item}}--{{key}}</p>
    </template>
    <script>
    export default {
    data ()
    {
    return {
    arry:[1,2,3,4,5,6,7],
    obj:{
    school:'江南大学',
    age:32,
    work:"前端开发"
    }
    }
    },
    methods: {
    changeItem(){
    this.$set(this.arry,1,5);
    this.$set(this.obj,"company","三一");
    },
    }
  • 相关阅读:
    Java设置环境变量
    php 生成二维码
    php 生成读取csv文件并解决中文乱码
    php 过滤重复的数组
    php 读取,生成excel文件
    php 逐行读取文本文件
    php 多维数组按键值分类
    python学习,day2:利用列表做购物车实例
    python学习,day1作业:设计一个三级菜单
    python学习,day2:字典
  • 原文地址:https://www.cnblogs.com/zhx119/p/9488569.html
Copyright © 2011-2022 走看看