账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    为什么ts+v3在template中使用slot的时候ts类型检测报错了?
    60
    0
    <rank :rankList="rankList" @showAllrank="showAllrank"> <template #title>机构订单数排行</template> </rank>在父组件中引入“rank.vue”组件,rank.vue组件中插槽如下:<div class="title"> <p> <span> <slot name="title">排名</slot> </span> </p></div>然后在使用的时候,ts语法报错如下:“元素隐式具有 "any" 类型,因为类型为 ""title"" 的表达式不能用于索引类型 "{} | {}"。 类型“{} | {}”上不存在属性“title”。”附上截图:
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • Ponnenult□旧时光 普通会员 1楼

      在TypeScript中,当你使用slot标签在模板中时,TypeScript会尝试检测你的类型是否匹配该标签。如果类型不匹配,它会抛出一个错误。

      但是,slot标签并不需要在类型上做任何特殊处理。TypeScript会自动检测类型,所以你不需要担心类型不匹配的问题。

      如果你确实遇到了类型不匹配的问题,你可以通过以下方式解决:

      1. 使用slot prop或者slot prop name代替slot标签。这将确保你的类型匹配标签。

      ```typescript

      ```

      1. 如果你的slot标签需要接收一个类型,你可以使用slots接受类型特性。这将确保你的类型匹配标签,并且你的slot标签也可以接收类型。

      ```typescript

      ```

      以上两种方法都可以解决你遇到的类型不匹配的问题。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部