首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Vue 中的 Props 与 Data 细微差别,你知道吗?

在本文中,我们将学习到: 什么是props,为什么这些数据向下流动,而不是向上 data 选项的用途 响应式是什么 如何避免 props 和 data 之间的命名冲突 如何将 props 和 data...结合使用 什么是 props 在Vue中,props(或properties)是我们将数据从父组件向下传递到其子组件的方式。...类似于家谱,具有: 父母 孩子 祖先 子孙 数据从根组件(位于最顶端的组件)沿着树向下流动。就像基因是如何代代相传的一样,父组件也会将自己的props传给了他们的孩子。...我们如何从父组件(ProfilePage)向下获取数据到子组件(ContactInfo) 我们必须使用 props 传递数据。...由于数据向下流,这意味着我们必须将数据放在组件树中足够高的位置,以便它可以向下流到需要去的所有位置。

3.2K10
您找到你想要的搜索结果了吗?
是的
没有找到

前端如何高效写页面 | 实战小结阶段一

最近公司在做一个新的项目,与之前大部分都是用ant design组件化开发相比,需要手动画页面的地方较多(这里的手动指的是用div+css布局自己画前端页面,或者自定义antd的样式),花费了老多的时间...所以特地在本阶段做一个小结,来记录如何可以更高效的写前端页面。...现如今发现必须系统专精学习行,所以我把b站pink老师的Html css的课刷了一遍,只能说Pink老师的课因人而异重在能有所得;然后再买了css的经典书。经常刷w3school文档。...但是如何能使用好,亟待研究。- 2 页面交互 javascript,基础知识打牢,数组、对象的用法要熟悉; 相同功能超过两个请用函数,遵循语法规范,方便维护。...多看大佬的代码,所谓大佬就是比自己厉害的人,如果说vue react我自认为现在就算看了里面的方法我运用不到我的代码里,那代码的质量自然也不会增长了。

42630

CSS入门指南-3:定位元素

specialpara { position: relative; top: 25px; left: 30px; } 因为相对定位相对的是它原来在文档流中的位置(默认位置),所以如果设置...现在,第三段从原来的元素(body)中挣脱了出来,与它在文档中的默认位置相比向下移动了25像素,向右移动了30像素。 需要注意的是,除了这个元素自己相对于原始位置挪动了一下以外,页面没有任何改变。...盒子位移属性是如何工作? 盒子的位移属性有四个“top、right、bottom和left”,用来指定元素的定位位置和方向。...这些属性只能在元素的“position”属性设置了“relative、absolute和fixed”属性值,生效。 对于相对定位元素,这些属性的设置让元素从默认位置移动。...例如,top设置一个值“20px”在一个相对定位的元素上,这个元素会在原来位置向下移动“20px”。

61910

React组件的state和props

React组件的state和props React的数据是自顶向下单向流动的,即从父组件到子组件中,组件的数据存储在props和state中。...之后在Item组件内部是使用this.props来获取传递到该组件的所有数据,它是一个对象其中包含了所有对这个组件的配置,现在包含了一个item属性,所以通过this.props.item来获取即可。...如果props在渲染过程中可以被改变,会导致这个组件显示的形态变得不可预测,只有通过父组件重新渲染的方式可以把新的props传入组件中。...如果提供的属性值不匹配的它应该抛出一个异常 // 注意:不能使用 console.warn 和 throw customProp: function(props, propName, componentName...// 它会调用每个数组或者对象的key,参数前两个是对象它本身和当前key // 注意:不能使用 console.warn 和 throw customArrayProp: PropTypes.arrayOf

1.5K30

当后端一次性丢给你10万条数据, 作为前端工程师的你,要怎么处理?

前端维护懒加载的数据分发和分页) 使用虚拟滚动技术(目前react的antd4.0已支持虚拟滚动的select长列表) 懒加载和分页方式一般用于做长列表优化, 类似于表格的分页功能, 具体思路就是用户每次加载能看见的数据...虚拟滚动技术也可以用来优化长列表, 其核心思路就是每次渲染可视区域的列表数,当滚动后动态的追加元素并通过顶部padding来撑起整个滚动内容,实现思路也非常简单....通过以上分析其实已经可以解决朋友的问题了,但是最为一名有追求的前端工程师, 笔者认真梳理了一下,并基于第一种方案抽象出一个实际的问题: 如何渲染大数据列表并支持搜索功能笔者将通过模拟不同段位前端工程师的实现方案...={styles.label}>{item.name} {item.text} }) } 复制代码 搜索数据...window.removeEventListener('scroll', getData, false) } }, []) 复制代码 其中prevY存储的是窗口上一次滚动的距离, 只有在向下滚动并且滚动高度大于上一次时更新其值

2.4K40

【JS】322- 手把手教你实现前端惰性加载

实现方案: 1、默认不加载图片,加载占位符2、组件滚动条变化3、计算可视区域,触发条件4、标签src属性加载资源 知识点: scrollTop:外框元素的滚动高度offsetTop:元素相对于最近的包含该元素的定位元素...el) { var source = el.dataset.src; el.src = source; } checkImgs(); 可以看出,页面加载时候,绑定外框的scroll事件,随着用户向下滚动鼠标...这里应该是有一些可以优化的地方,比如1、可以监听向下滚动时候的事件,并设置延时(使用截流函数),防制多次调用回调函数。...这种条件下,假设 bound=el.getBoundingClientRect(),随着滚动条的向下滚动,bound.top会越来越小,也就是图片到可视区域顶部的距离越来越小,当 bound.top==...通过多种方案对比,使图片仅在浏览器当前视窗内出现时加载该图片,达到减少首屏图片请求数,优化前端性能,提高用户体验。不管哪种方法,都有其自己的优势和劣势,掌握其中的原理,灵活应用才是最重要的。

94330

阿里三面:灵魂拷问——有react fiber,为什么不需要vue fiber?

数据修改了,接下来要解决视图的更新:react中,调用setState方法后,会自顶向下重新渲染组件,自顶向下的含义是,该组件以及它的子组件全部需要渲染;而vue使用Object.defineProperty...:点击change Father state,打印Father:render,不会打印child:render。...要找到两棵树的变化部分,最容易想到的办法就是深度优先遍历,规则如下: 从根节点开始,依次遍历该节点的所有子节点; 当一个节点的所有子节点遍历完成,认为该节点遍历完成; 如果你系统学习过数据结构,应该很快就能反应过来...这种数据结构就是fiber,它的遍历规则如下: 从根节点开始,依次遍历该节点的子节点、兄弟节点,如果两者都遍历了,则回到它的父节点; 当一个节点的所有子节点遍历完成,认为该节点遍历完成; 根据这个规则...本文不对这部分做深入探讨,只需要知道它每隔16ms会被调用一次,它的回调函数可以获取本次可以执行的时间,每一个16ms除了requesetIdleCallback的回调之外,还有其他工作,所以能使用的时间是不确定的

74620

JavaScript基础

(element.innerHTML) // box1中的div document.querySelectorAll():根据CSS选择器去页面中查询一组元素,会将匹配到所有元素封装到一个数组中返回,即使匹配到一个... box1中的div box1中的div </div...事件委派是利用了冒泡,通过委派可以减少事件绑定的次数,提高程序的性能 我们希望,绑定一次事件,即可应用到多个的元素上,即使元素是后添加的我们可以尝试将其绑定给元素的共同的祖先元素 target :...} /* * 使用addEventListener()方法绑定响应函数,取消默认行为时不能使用...用于重新加载当前页面,作用和刷新按钮一样,如果在方法中传递一个true,作为参数,则会强制清空缓存刷新页面 replace() 可以使用一个新的页面替换当前页面,调用完毕也会跳转页面不会生成历史记录,不能使用回退按钮回退

1.9K20
领券