当前位置:首页 > uni-app

uniapp 插槽使用

2026-03-05 00:10:49uni-app

uniapp 插槽的基本使用

uniapp 中,插槽(slot)是组件化开发的重要特性,允许父组件向子组件传递内容。插槽分为默认插槽和具名插槽。

子组件定义插槽:

<template>
  <view>
    <!-- 默认插槽 -->
    <slot></slot>

    <!-- 具名插槽 -->
    <slot name="header"></slot>
  </view>
</template>

父组件使用插槽:

<template>
  <child-component>
    <!-- 默认插槽内容 -->
    <text>默认插槽内容</text>

    <!-- 具名插槽内容 -->
    <text slot="header">头部内容</text>
  </child-component>
</template>

作用域插槽的使用

作用域插槽允许子组件向父组件传递数据,父组件可以自定义渲染逻辑。

子组件定义作用域插槽:

uniapp 插槽使用

<template>
  <view>
    <slot :item="itemData" name="item"></slot>
  </view>
</template>

<script>
export default {
  data() {
    return {
      itemData: { name: '示例数据' }
    }
  }
}
</script>

父组件使用作用域插槽:

<template>
  <child-component>
    <template v-slot:item="slotProps">
      <text>{{ slotProps.item.name }}</text>
    </template>
  </child-component>
</template>

动态插槽名

动态插槽名允许通过变量动态指定插槽名称。

子组件定义多个具名插槽:

uniapp 插槽使用

<template>
  <view>
    <slot name="header"></slot>
    <slot name="footer"></slot>
  </view>
</template>

父组件动态绑定插槽名:

<template>
  <child-component>
    <template v-slot:[dynamicSlotName]>
      <text>动态插槽内容</text>
    </template>
  </child-component>
</template>

<script>
export default {
  data() {
    return {
      dynamicSlotName: 'header'
    }
  }
}
</script>

插槽的默认内容

子组件可以为插槽设置默认内容,当父组件未提供插槽内容时显示。

子组件设置默认内容:

<template>
  <view>
    <slot>
      <text>默认显示的文本</text>
    </slot>
  </view>
</template>

注意事项

  • 插槽内容在父组件中编译,作用域属于父组件。
  • 作用域插槽的数据传递是单向的,父组件不能直接修改子组件传递的数据。
  • 动态插槽名需确保绑定的变量值是字符串类型。

标签: 插槽uniapp
分享给朋友:

相关文章

uniapp 消息推送

uniapp 消息推送

uniapp 消息推送实现方法 使用uniPush服务 uniapp官方提供了uniPush服务,支持iOS、Android及小程序平台的消息推送。需要在manifest.json中配置推送模块,并按…

uniapp打包

uniapp打包

uniapp打包步骤 H5平台打包 在项目根目录运行以下命令生成H5资源文件: npm run build:h5 打包完成后,文件默认输出到/dist/build/h5目录,可直接部署到Web服务器…

uniapp 如何封装request请求

uniapp 如何封装request请求

封装 request 请求的核心思路 在 UniApp 中封装请求通常基于 uni.request,通过统一处理 URL、参数、header 和拦截逻辑提升代码复用性。以下是一个完整封装方案: 创建…

uniapp 后门

uniapp 后门

关于 uniapp 后门的问题,目前没有权威证据表明 uniapp 官方存在故意植入后门的行为。但作为开发者,需注意以下安全实践: 检查第三方插件和依赖 确保项目中使用的第三方插件来源可靠,定期更新…

uniapp get

uniapp get

uniapp 获取数据的方法 在 uniapp 中获取数据可以通过多种方式实现,包括 API 请求、本地存储、页面传参等。以下是一些常见的方法: API 请求获取数据 使用 uni.request…

uniapp 线程

uniapp 线程

uniapp 线程的概念 在 uniapp 中,线程的概念与原生应用开发有所不同。由于 uniapp 是基于 JavaScript 的运行环境,它并不直接支持多线程操作。JavaScript 本身是单…