NervJS / taro

开放式跨端跨框架解决方案,支持使用 React/Vue/Nerv 等框架来开发微信/京东/百度/支付宝/字节跳动/ QQ 小程序/H5/React Native 等应用。 https://taro.zone/
https://docs.taro.zone/
Other
35.39k stars 4.78k forks source link

<script setup>的透传问题 #12540

Open gyt95 opened 2 years ago

gyt95 commented 2 years ago

相关平台

微信小程序

小程序基础库: 2.25.2 使用框架: Vue 3

复现步骤

// 父组件
<child text="xxx" @success="success">

// 子组件
<template>
 <grand-son>
</template>

<!-- Vue3.2 要求这个是单独一个script标签写的 -->
<script lang="ts"> 
export default { inheritAttrs: false } 
</script> 

<script lang="ts" setup> 
// ...
 </script>

// 孙组件
<template>
  <nut-xxx :title="text" @success="success"/>
</template>

<script lang="ts" setup>
const attrs = useAttrs(); 
const { text, success } = attrs; 
</script>

期望结果

孙组件调用父组件透传的事件后能正常触发父组件对应的事件

实际结果

无法触发父组件透传的事件

环境信息

👽 Taro v3.4.12

  Taro CLI 3.4.12 environment info:
    System:
      OS: Windows 10

补充信息

像以上这样写,属性text没问题,但事件success则无效,如何解决?是Taro版本还未支持还是我哪里写错了

Chen-jj commented 2 years ago

@gyt95 麻烦提供一下完整 demo