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

网站模版 拓东莞市城建局

网站模版 拓,东莞市城建局,wordpress商城插件,wordpress 开发商城Vue对于插槽有两个专门的APIvm.$slots和vm.$scopedSlots#xff0c;分别是普通插槽和作用域插槽#xff0c;使用JSX语法或渲染函数的时候#xff0c;定义插槽将使用上述两个API。 渲染函数createElement 普通插槽和作用域插槽在定义上相差不大#xff0c;但是在使用方法上…Vue对于插槽有两个专门的APIvm.$slots和vm.$scopedSlots分别是普通插槽和作用域插槽使用JSX语法或渲染函数的时候定义插槽将使用上述两个API。 渲染函数createElement 普通插槽和作用域插槽在定义上相差不大但是在使用方法上略微有点区别详见渲染函数数据对象 普通插槽插槽内容以children子节点形式然后在数据对象中指定插槽名 // 定义带插槽的组件$slots.default为匿名插槽其余的则是具名插槽匿名插槽的插槽名可以省略 const MySlot {render (h) {return h(div, [h(header, [this.$slots.header]),h(main, [this.$slots.header]),h(footer, [this.$slots.footer])])} }// 在children子节点中指定插槽名以使用具名插槽未指定插槽名的则放入匿名插槽中 export default {components: { MySlot },render (h) {return h(MySlot, [h(template, { slot: header }, hello world),children node,h(div, { slot: footer }, this is footer)])} }作用域插槽与普通插槽不同作用域插槽的内容直接放入渲染函数的数据对象中的 // 定义作用域插槽 const MySlot {data () {return { user: John, content: vue, copytight: CopyRight }},render (h) {return h(div, [h(header, [this.$scopedSlots.header({ user: this.user })]),h(main, [this.$scopedSlots.default({ content: this.content })]),h(footer, [this.$scopedSlots.footer({ copytight: this.copytight })])])} }// 要使用作用域插槽的数据内容则插槽必须在组件的数据对象scopedSlots中使用如header所示 // 作用域插槽也可以当作普通插槽使用如default和footer export default {components: { MySlot },render (h) {return h(MySlot, {scopedSlots: {header: props hello, ${props.user}}}, [children node,h(div, { slot: footer }, this is footer)])} }关于静态插槽和作用域插槽 你可以通过 this.$slots 访问静态插槽的内容每个插槽都是一个 VNode 数组 也可以通过 this.$scopedSlots 访问作用域插槽每个作用域插槽都是一个返回若干 VNode 的函数 this.$slots 返回的是数组this.$scopedSlots 返回的是函数这里踩一个坑使用 this.$scopedSlots 定义的插槽如果未被使用则会报错 例如删除或注释掉具名插槽footer内容后控制台报错 [Vue warn]: Error in render: TypeError: this.$scopedSlots.footer is not a function如何避免这个问题暂时没有找到解决方案研究还不够深入 2021年1月25日补充 使用 this.$scopedSlots 定义的插槽如果未被使用则会报错 原因 以footer插槽为例其实不用想的太复杂作用域插槽this.$scopedSlots.footer()就是一个函数MySlot组件使用了这个函数但是父组件却没有传入此函数的定义所以MySlot再调用这个函数的时候发生报错。 解决办法 在MySlot调用this.$scopedSlots.footer()前进行一次判断此函数是否存在即可。 JSX语法 JSX是createElement的语法糖在用法上没有什么区别对照着上面的内容稍微改一改就好了 静态插槽 const MySlot {render (h) {return (divheader{this.$slots.header}/headermain{this.$slots.default}/mainfooter{this.$slots.footer}/footer/div)} }export default {render (h) {return (MySlottemplate slotheaderhello world/templatechildren nodediv slotfooterthis is footer/div/MySlot)} }作用域插槽 const MySlot {data () {return { user: John, content: vue, copytight: CopyRight }},render (h) {return (divheader{this.$scopedSlots.header({ user: this.user })}/headermain{this.$scopedSlots.default({ content: this.content })}/mainfooter{this.$scopedSlots.footer({ copytight: this.copytight })}/footer/div)} }export default {render (h) {return (MySlotscopedSlots{{header: props hello, ${props.user}}}children nodediv slotfooterthis is footer/div/MySlot)} }
http://www.huolong8.cn/news/98005/

相关文章:

  • 网站全站出售无代码软件开发
  • 网站开发 开源网站开发部组织架构
  • 个人网站建站步骤广州网站建设公司怎么样
  • 宁波网站建设推广报价手机移动网站建设
  • 企业免费建站宝安做网站哪家好
  • 那种软件可以做视频网站短视频平台
  • 温州做网站seophp 企业网站 后台图片上传
  • 网站建设企业哪家好互联网广告销售好做吗
  • 建设企业展示网站工业设计服务平台
  • 鲜花网站建设规模设想建筑师网站
  • 网站优化中友情链接怎么做滨州淘宝网站建设
  • 网站建设和推广定制开发app多少钱
  • 注册网站会员需要详细填写辽宁建设工程信息网新版网址
  • 门店到什么地步可以做网站接做名片的网站
  • 家用电脑做网站后台响应网站和模板网站
  • 什么叫网站建设服务网站优化页面
  • 指定词整站优化360做企业网站多少钱
  • 房地产电商网站建设深圳洛可可设计公司
  • 怎么做网站推广临沂自己做网站商城需要营业执照吗
  • 新浪云 建设网站如何下载网站模版
  • 支付宝网站怎么设计的网站建设的公司太多了
  • 公司的 SEO与网站建设友情链接交易购买
  • 2015 军考 网站建设wordpress 标题 回车
  • 工程项目外包平台泰州网站建设优化
  • 网站建设 考核指标页面设计中为什么要有优先级排列
  • 百度站点网站制作一薇
  • 网站需求分我自己的网站 怎样做防火墙
  • 免费在线做网站视频直播技术
  • 网站系统参数设置seo管理系统易语言
  • 做外卖网站的模板南昌网站建设联系方式