javascript - Vue.js 错误 : Named slots must use '<template>' on a custom element

标签 javascript vue.js vuejs-slots

我正在尝试通过插槽传递信息,但我不断收到错误消息,

'Named slots must use '' on a custom element.'


请参阅下面的代码。
    <template>
        <div>
            <h3>Home</h3>
            <User v-slot:user="{ user }">
                <template>
                <div v-if="user">
                    <p>Logged-in as {{user.uid}} </p>
    
                    <!-- PASS USER STATE AS PROP -->
                    <UserProfile :user="user"/> 
                    <ChatList :uid="user.uid"/>
                </div>
                <Login v-else/>
                </template>
            </User>
        </div>
    </template>
我在下一行收到错误。
    <User v-slot:user="{ user }">

最佳答案

根据您的组件名称,我怀疑 User组件包含“用户”插槽。v-slot应该在 <template><User> 内标签:

<User>           👇
  <template v-slot:user="{ user }">
    <div v-if="user">
      <p>Logged-in as {{ user.uid }}</p>
    </div>

    <Login v-else />
  </template>
</User>
demo

关于javascript - Vue.js 错误 : Named slots must use '<template>' on a custom element,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69511567/

相关文章:

javascript - 在使用 Javascript 进行鼠标悬停时,我有一个单独的 div 更改颜色但我需要在使用后重置该功能?

php - 找不到 Laravel API 路由

vue.js - 删除数据表 Vuetify 上选定的行

javascript - vue 中对象属性变为空白

vue.js - 视觉 : Access Vue component method inside rendered named slot

vue.js - 如何在插槽中访问子组件的 react 数据?

javascript - 访问 Vuetify 作用域槽内表 colspan 的 number prop 值

java - 从 Javascript 调用 Applet 函数时出现问题

javascript - 如何在 JavaScript 中找到匹配 bool 条件的数组的第一个元素?

javascript - 我的 angularjs 的一些奇怪的行为