当前位置: 首页 > news >正文

棋牌论坛网站怎么做商业网站建设与维护方案书

棋牌论坛网站怎么做,商业网站建设与维护方案书,网站开发技术对比,深圳网站制作公司咨询shallowReactive与shallowRef shallow#xff1a;浅的#xff0c;和deep相反 shallowReactive#xff1a;只处理对象最外层属性的响应式 shallowRef#xff1a;只处理基本数据类型的响应式#xff0c;不进行对象的响应式处理 如果有一个对象数据#xff0c;结构比较深浅的和deep相反 shallowReactive只处理对象最外层属性的响应式 shallowRef只处理基本数据类型的响应式不进行对象的响应式处理 如果有一个对象数据结构比较深但是变化只对外层属性变化使用shallowReactive 如果有一个对象数据后序不会修改对象中的属性而是生成新的对象来替换使用shallowRef templateh4当前的x.y值是{{ x.y }}/h4button clickx{y:888}点我替换x/buttonbutton clickx.y点我x.y/buttonhrh4{{ person }}/h4h2姓名{{ person.name }}/h2h2年龄{{ person.age }}/h2h2薪资{{ person.job.j1.salary }}K/h2button clickperson.name~修改姓名/buttonbutton clickperson.age增长年龄/buttonbutton clickperson.job.j1.salary涨薪/button /templatescript import {shallowReactive, shallowRef} from vueexport default {name: App,setup() {//数据let person shallowReactive({// 只考虑第一层数据的响应式在修改salary的时候是修改不成功的name: 张三,age: 18,job: {j1: {salary: 20}}})let x shallowRef({y: 0});console.log(******, x)//返回一个对象常用return {x,person}} } /scriptreadonly与shallowReadonly readonly让一个响应式数据变成只读深只读 shallowReadonly让一个响应式数据变成只读浅只读 templateh4当前求和为{{ sum }}/h4button clicksum点我/buttonhrh2姓名{{ person.name }}/h2h2年龄{{ person.age }}/h2h2薪资{{ person.job.j1.salary }}K/h2button clickperson.name~修改姓名/buttonbutton clickperson.age增长年龄/buttonbutton clickperson.job.j1.salary涨薪/button /templatescript import {reactive, readonly, ref, shallowReadonly} from vueexport default {name: App,setup() {//数据let sum ref(0)let person reactive({name: 张三,age: 18,job: {j1: {salary: 20}}})person readonly(person);// person里的任何东西都改不了person shallowReadonly(person);// 浅层次的readonly深层次的可以修改sum readonly(sum);// sum改不了sum shallowReadonly(sum);// sum改不了//返回一个对象常用return {sum,person}} } /scripttoRaw与markRaw toRaw将一个reactive生成的响应式对象转为普通对象用于读取响应式对象对应的普通对象对这个普通对象的操作页面都不会更新。 markRaw标记一个对象使其永远不会成为响应式对象当有些值没必要设置成响应式的时候可以跳过响应式转换提高性能例如复杂的第三方类库等。 templateh4当前求和为{{ sum }}/h4button clicksum点我/buttonhrh2姓名{{ name }}/h2h2年龄{{ age }}/h2h2薪资{{ job.j1.salary }}K/h2h3 v-showperson.car座驾信息{{ person.car }}/h3button clickname~修改姓名/buttonbutton clickage增长年龄/buttonbutton clickjob.j1.salary涨薪/buttonbutton clickshowRawPerson输出最原始的person/buttonbutton clickaddCar给人添加一台车/buttonbutton clickperson.car.name!换车名/buttonbutton clickchangePrice换价格/button /templatescript import {markRaw, reactive, ref, toRaw, toRefs} from vueexport default {name: App,setup() {//数据let sum ref(0)let person reactive({name: 张三,age: 18,job: {j1: {salary: 20}}});function showRawPerson() {const p toRaw(person);p.age;console.log(p);}function addCar() {let car {name: 奔驰, price: 40};person.car markRaw(car);}function changePrice() {person.car.price;console.log(person.car.price);}//返回一个对象常用return {sum,person,...toRefs(person),showRawPerson,addCar,changePrice}} } /scriptcustomRef 自定义ref可以对ref包装的数据改动显示的进行跟踪和触发更新。 写一个效果写一个input和一个h3在input里输入内容后h3的内容等待1秒后展示。 templateinput typetext v-modelkeywordh3{{ keyword }}/h3 /templatescript import {customRef} from vueexport default {name: App,setup() {// 自定义一个myReffunction myRef(value, delay) {let timer;// 通过customRef去实现自定义return customRef((track, trigger) {return {get() {console.log(通过get方法读取${value});track();// 告诉Vue这个value值是需要被“追踪”的return value;},set(newValue) {clearTimeout(timer);timer setTimeout(() {value newValue;console.log(通过set方法设置${newValue});trigger();// 告诉Vue去更新界面}, delay);}}});}let keyword myRef(hello, 1000);// 使用程序员自定义的refreturn {keyword}} } /scriptprovide与inject 实现祖先和后代的组件间通信祖先组件通过provide将数据提供出去后代组件通过inject注入数据。 App.vue祖先组件 templatediv idApph1我是祖先组件/h1h2{{ value }}/h2button clickvalue1点我加1/buttonChild/Child/div /template script import Child from ./components/Child.vue; import {provide, ref} from vue;export default {name: App,components: {Child},setup() {let value ref(1);provide(value, value);return {value}} } /script style scoped #App {background-color: red;padding: 10px; } /styleChild.vue子组件 templatediv idChildh1我是子组件/h1GrandChild/GrandChild/div /template script import GrandChild from ./GrandChild.vue;export default {name: Child,components: {GrandChild} } /script style scoped #Child {background-color: green;padding: 10px; } /styleGrandChild.vue孙组件 templatediv idGrandChildh1我是孙组件/h1h1{{ value }}/h1/div /template script import {inject} from vue;export default {name: GrandChild,setup() {let value inject(value);return {value}} } /script style scoped #GrandChild {background-color: yellow;padding: 10px; } /style响应式数据的判断 isRef检查一个值是否是一个ref对象 isReactive检查一个对象是否是由reactive创建的响应式代理 isReadonly检查一个对象是否是由readonly创建的只读代理 isProxy检查一个对象是否是由reactive或readonly方法创建的代理 templatediv/div /template script import {isProxy, isReactive, isReadonly, isRef, reactive, readonly, ref} from vue;export default {name: App,setup() {let car reactive({name:奔驰,price:100});let sum ref(0);let car2 readonly(car);console.log(isRef(sum));console.log(isReactive(car));console.log(isReadonly(car2));console.log(isProxy(car));console.log(isProxy(sum));} } /script
http://www.w-s-a.com/news/736359/

相关文章:

  • 琪觅公司网站开发面点培训学校哪里有
  • 北京建设工程信息网站江苏企业网站建设
  • php电子商务网站建设wordpress新建的页面如何加xml
  • 去百度建网站外贸业务推广
  • 百度seo 站长工具网络营销课程个人总结3000字
  • 设计品牌网站wordpress商城 中文站
  • 公司网站要备案吗百度售后电话人工服务
  • 北京移动网站建设制作一个购物网站
  • 网站优化排名如何做网络开发工程师
  • 域名已有服务器也有怎么做网站pc 手机网站 微站
  • 鞍山网站设计制作网站最好的外贸网站建设
  • 百度手机模板网站新变更营业执照注册号查了发现之前有备案过网站了
  • 群晖个人网站建设建设网站主机免费版
  • 下载好了网站模板怎么开始做网站阿克苏网站建设价格
  • 有谁做彩票网站学会了vue 能搭建一个网站平台
  • 描述对于营销型网站建设很重要飘红效果更佳教育培训排行榜前十名
  • 国外网站有哪些推荐的网站按关键词显示广告图片
  • 互联网招聘网站排名手机网站系统
  • 网站与云平台区别企业网站建设有什么要求
  • wordpress福利网站源码高端网站设计培训机构
  • 网站建设找客户招标网免费
  • 东莞食品网站建设扬州市住房建设局网站
  • 网站色彩心理建设网站的主要功能有哪些
  • 营销型网站建设运营企业宣传网页设计
  • 建设银行官方网站网址sem搜索
  • 简述建设网站的具体步骤网络建设方案ppt
  • 自建门户网站建设工程质量监理协会网站
  • 为企网站版面设计经历了哪几个阶段
  • 如何直到网站是用什么模板做的怎么在外贸公司拿订单
  • 网站专题制作酒店网站建设考虑的因素