vue的条件渲染(v-if 与 v-show指令)与列表渲染(1),程序员学什么最好

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Web前端全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024c (备注前端)
img

正文

两个p标签均显示出来,此时的dom结果没有template标签:

在这里插入图片描述

与v-if相似的,有一个v-show指令,它也是根据条件判断来决定标签的隐藏与显示,但它的特点是,仅对标签做:display:none处理

因此,要想隐藏dom节点,不仅可以使用css样式,还可以用vue指令,当不满足条件时,设置该指令的内容就不会显示

v-show与v-if在条件不满足时的效果对比:

将show字段设为false,增加一个以v-show指令控制的p标签,具体指令为:v-show="show"

这是第一个p

这是第二个p

这是第三个p,用v-show控制显示

dom结果为:

在这里插入图片描述

可以看到,只剩下了一个由v-show控制的p标签

列表渲染


1.可以接收数字(相似于range(1,num+1),在页面上显示num个li,内容为1-num)或字符串(遍历字符串的每个字符)

2.循环遍历数组/对象,遍历子元素的若还是对象,可以用点"."操作调用其值

3.遍历每个子元素时,可以获取子元素的索引index:v-for="(item, index) in items"

4.如果遍历的是对象,则可以一次性获取其子元素的值/键/索引:v-for="(value, key, index) in obj"

    • {{value}} — {{key}} — {{index}}
      • {{item.title}} - {{index}}
      • data中定义person与items:

        person:{

        name:“ccy”,

        age:20,

        sex:“female”

        },

        items:[

        {title:“ccy1”},

        {title:“ccy2”},

        {title:“ccy3”}

        ]

        效果:

        在这里插入图片描述

        注意点:

        1. 列表渲染也可以使用template标签包裹li

        2. 由于js的限制,Vue 不能检测以下数组的变动:

        当利用索引直接设置一个数组项时,例如:vm.items[indexOfItem] = newValue

        当你修改数组的长度时,例如:vm.items.length = newLength

        第一类问题的解决办法:

        1.深拷贝一份想要改变的数据所在的数组/对象,在副本上做相应修改,再赋值给vue的data

        2.使用点操作,一一对key进行修改

        3.使用Vue.set(vm.items, indexOfItem, newValue)vm.items.splice(indexOfItem, 1, newValue)

        第二类问题的解决办法:

        使用vm.items.splice(newLength)

        1. 对数组的这些操作,Vue是支持的:

        push()

        pop()

        shift()

        unshift()

        splice()

        sort()

        reverse()

        这些操作变更调用了这些方法的原始数组

        也支持非变更方法,如filter()、concat() 和 slice(),不会变更原始数组,而是返回一个新数组

        1. key的使用之标识:html模板渲染,对于一样的标签,是不会重新渲染的,因此,如果相同的标签却希望重新渲染,就需要给标签不同的标识key,key值是遍历传给该标签的值,这些标签就可以跟着指定值的变化而重新渲染(标识如果是不会改变的,也不会重新渲染)

        2. 嵌套列表下的v-for指令值支持层级点调用

        小demo:

        希望的效果:点击这个ul下的某个li,li显示的value就变成"zzz"

          methods:{

          changeClick:function(index){

          console.log(index);

          this.items[index] = {title:“zzz”}

          }

          }

          这样想修改索引为index的items子元素是不会生效的

          1.可以在副本上做修改,然后重新赋值给items:

          changeClick:function(index){

          let arr = this.items.concat();

          arr[index].title = “zzz”

          this.data = arr;

          }

          2.可以使用点操作,修改key对应的value

          changeClick:function(index){

          this.items[index].title = “zzz”

          }

          3.可以使用官方提供的Vue.set

          changeClick:function(index){

          Vue.set( this.items, index, {title:“zzz”})

          }

          效果均为:

          在这里插入图片描述

          小demo2:一样的属性,设置不同的key,重新渲染

          没有设置key时,当dom被触发重新渲染,其中的三个input并没有重新渲染

          {{item}}

          <button @click=“reverse”>倒序

          文末

          如果30岁以前,可以还不知道自己想去做什么的话,那30岁之后,真的觉得时间非常的宝贵,不能再浪费时间在一些碎片化的事情上,比如说看综艺,电视剧。一个人的黄金时间也就二,三十年,不能过得浑浑噩噩。所以花了基本上休息的时间,去不断的完善自己的知识体系,希望可以成为一个领域内的TOP。

          同样是干到30岁,普通人写业务代码划水,榜样们深度学习拓宽视野晋升管理。

          这也是为什么大家都说30岁是程序员的门槛,很多人迈不过去,其实各行各业都是这样都会有个坎,公司永远都缺的高级人才,只用这样才能在大风大浪过后,依然闪耀不被公司淘汰不被社会淘汰。

          269页《前端大厂面试宝典》

          包含了腾讯、字节跳动、小米、阿里、滴滴、美团、58、拼多多、360、新浪、搜狐等一线互联网公司面试被问到的题目,涵盖了初中级前端技术点。

          前端面试题汇总

          JavaScript

          网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

          需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)
          img

          一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
          .png)

          JavaScript

          网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

          需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)
          [外链图片转存中…(img-CyvQ4R3S-1713200286015)]

          一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

        评论
        添加红包

        请填写红包祝福语或标题

        红包个数最小为10个

        红包金额最低5元

        当前余额3.43前往充值 >
        需支付:10.00
        成就一亿技术人!
        领取后你会自动成为博主和红包主的粉丝 规则
        hope_wisdom
        发出的红包
        实付
        使用余额支付
        点击重新获取
        扫码支付
        钱包余额 0

        抵扣说明:

        1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
        2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

        余额充值