小程序中的slot插槽

  • 插槽的使用场景:
    • 一个自定义组件,可能被页面多处复用,但每处可能需要显示的内容不一样。组件中的某一部分,可能在页面某位置使用时不需要显示,但在其他位置又可能需要它的显示,以上需求,可用slot插槽来实现。
  • 使用方法:
    • 把slot标签写在组件里,根据外部(页面)传来的标签,控制插槽内容的显示和隐藏。
    • 如果需要显示想要的内容,就传递相应的标签进来,如果不想显示,就不需要传递。
    • 做好标签插入之后,记得在组件的Component属性列表里启用插槽。
  • slot作用:
    • 提高了组件的灵活性和复用性。

举个?:

页面中(或父组件中)插入需要的标签–wxml:

<view class="container">
	<!-- 使用自定义组件(v-tag为自定义组件名称) -->
    <v-tag text="text">
    	<!-- 插入组件中的标签(这里的slot为组件里所定义的插槽名字) -->
      	<text slot="after">{{ nums }}</text>
    </v-tag>
</view>

自定义组件–wxml:

<view class="container">
  <text>{{ text }}</text>
  <!-- 文本后方插入(after为插槽的名字) -->
  <slot name="after"></slot>
</view>

在自定义组件的Component属性列表里启用插槽–js:

Component({
  /**
   * 组件的属性列表
   */
  options: { // 启用插槽
    multipleSlots: true
  },
  properties: { // 开放数据
    text: String
  },
  /**
   * 组件的初始数据
   */
  data: {
  },
  /**
   * 组件的方法列表
   */
  methods: {
  }
})

使用插槽前的效果:
在这里插入图片描述
使用插槽后的效果:
在这里插入图片描述
声明:上图每个文本标签均为一个自定义组件,标签尾部的数字,是我们使用插槽传进去的text标签。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值