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="app">
            <p v-if="ok">成功了</p>
            <p v-else>失败了</p>

            <p v-show="ok">表白成功了</p>
            <p v-show="!ok">表白失败了</p>
            <button @click="ok=!ok">切换</button>
        </div>

        <script type="text/javascript" src="../js/vue.js" ></script>
        <script>
            new Vue({
                el:‘#app‘,
                data:{
                    ok:false
                }
            })
        </script>
    </body>
</html>

列表渲染

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
        <!--
            1.列表显示
                数组:v-for    /    index
                对象:v-for    /    key
            2.列表的更新显示
                删除item
                替换item
        -->

        <div id="demo">
            <h2>测试:v-for 遍历数组</h2>
            <ul>
                <!-- p:遍历的个体    index:下标-->
                <li v-for="(p,index) in persons" :key="index">
                    {{index}}----{{p.name}}----{{p.age}}
                    ----<button @click="deleteP(index)">删除</button>
                    ----<button @click="updateP(index,{name:‘Cat‘,age:20})">更新</button>
                </li>
            </ul>
            <h2>测试:v-for 遍历对象</h2>
            <ul>
                <li v-for="(value,key) in persons[1]" :key="key">
                    {{value}}----{{key}}
                </li>
            </ul>
        </div>

        <script type="text/javascript" src="../js/vue.js" ></script>
        <script>
            //vue本身只是监视了的改变,没有监视数组内部数据的改变
            //vue重写了数组中的一系列改变数组内部数据的方法(先调用原生,更新界面)
            //即vue包含一组观察数组的变异方法,所以他们也将会触发视图更新:
            //push()    pop()    shift()
            //unshift()    splice()    sort()    reverse()
            //实现思路:重写-更新
            new Vue({
                el:"#demo",
                data:{
                    persons:[
                        {name:‘Tom‘,age:18},
                        {name:‘Taosir‘,age:22},
                        {name:‘moer‘,age:20},
                        {name:‘Bom‘,age:24},
                    ]
                },
                methods:{
                    deleteP(index){
                        //删除persons中指定的index的p

                        this.persons.splice(index,1);
                    },
                    updateP(index,newP){
                        //并没有改变persons本身,数据内部发生了变化,但并没有调用变异方法,vue不会更新
                        //this.persons[index]=newP;    //没有指向persons本身,错!
                        this.persons.splice(index,1,newP);//删除一个,然后添加
                    }
                }
            })
        </script>
    </body>
</html>

原文地址:https://www.cnblogs.com/it-taosir/p/9887112.html

时间: 2024-11-18 20:02:32

VUE:条件渲染和列表渲染的相关文章

Vue学习计划(基础三)-class与style绑定,条件渲染和列表渲染

Class与style绑定.条件渲染和列表渲染 目标: 熟练使用class与style绑定的多种方式 熟悉v-if与v-for的用法,以及v-if和v-for一起使用的注意事项 class与style绑定的多种方式 绑定class和style都是使用v-bind也就是: 无论是绑定class还是style,都有两种方式,一种是对象,一种是数组. class和:class是共存的 绑定示例 1.class对象绑定 <!-- 根据isActivity的真假,判断是否应用activity这个class

Vue基础篇--5列表渲染v-for

Vue基础篇--5列表渲染v-for 1.用v-for把一个数组对弈为一组元素 我们用v-for指令根据一组数组选项列表进行渲染. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <script src="./vue.js"

1.3 条件渲染、列表渲染

1. 条件渲染 1.1 条件渲染指令1) v-if 与 v-else 2) v-show 1.2 比较 v-if 与 v-show3) 如果需要频繁切换 v-show 较好 4) 当条件不成立时,v-if 的所有子节点不会解析(项目中使用) div id="demo"> <p v-if="ok">表白成功</p> <p v-else>表白失败</p> <hr> <p v-show="o

微信小程序自学第五课:条件渲染、列表渲染

一.条件渲染 1. wx:if 在框架中,我们用 wx:if="{{condition}}" 来判断是否需要渲染该代码块: <view wx:if="{{condition}}"> True </view> 也可以用 wx:elif 和 wx:else 来添加一个 else 块: <view wx:if="{{length > 5}}"> 1 </view> <view wx:elif=

【WeChat 小程序】005 - 条件渲染以及列表渲染

条件渲染 1. 概念: 只有当条件成立时才渲染生成 2.wx:if属性的设置 示例代码: <text wx:if="{{thisWeekMovie.isHighlyRecommended}}">强烈推荐</text> 注:只有当thisWeekMovie.isHighlyRecommended为真时,界面元素才会被渲染 类似的:使用hidden属性也可以实现类似的效果,但元素总是会被生成,增大初始化开销 <text hidden="{{!this

React的条件渲染和列表渲染

React事件 特点:1/react事件,绑定事件的命名,驼峰命名法.2/{},传入1个函数,而不是字符串 <button onClick={this.sendData}>传递helloworld给父元素</button> 事件对象:React返回的事件对象是代理的原生的事件对象,如果想要查看事件对象的具体值,必须之间输出事件对象的属性. 注意:原生,阻止默认行为时,可以直接返回return false:React中,阻止默认必须e.preventDefault(); React事

【03】Vue 之列表渲染及条件渲染

3.1. 条件渲染 有时候我们要根据数据的情况,决定标签是否进行显示或者有其他动作.最常见的就是,表格渲染的时候,如果表格没有数据,就显示无数据.如果有数据就显示表格数据. Vue帮我们提供了一个v-if的指令,帮助我们完成判断的模板处理. <div id="app"> <h1 v-if="ok">Yes</h1> <h1 v-else>No</h1> </div> <!-- 当ok为tr

vue列表渲染

1. v-for 遍历数组 //item=>值,index=>索引 <ul id="example-2"> <li v-for="(item, index) in items"> {{ index }} - {{ item.message }} </li> </ul> var example2 = new Vue({ el: '#example-2', data: { items: [ { message:

Vue.js 实战教程 V2.x(10)列表渲染

10列表渲染 10.1用 v-for 把数组对应为元素 <ul id="example-1"> <li v-for="item in items"> {{ item.message }} </li> </ul> var example1 = new Vue({ el: '#example-1', data: { items: [ { message: 'Foo' }, { message: 'Bar' } ] } })