vue.js - 在渲染期间访问了属性“dynamicslotname”,但未在实例上定义
问题描述
在渲染期间访问了属性“dynamicslotname”,但未在实例上定义。在 vue3. 我正在测试 vue3 的动态插槽,但我错过了“在渲染期间访问了属性“dynamicslotname”但未在实例上定义的问题。在“
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="https://unpkg.com/vue@next"></script>
<script src="https://unpkg.com/lodash@4.17.20/lodash.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/axios@0.12.0/dist/axios.min.js"></script>
</head>
<body>
<div id="app">
<base-layout>
<template v-slot:[dynamicSlotName]>
<p>Hello</p>
</template>
</base-layout>
</div>
</body>
<script>
const baseLayout = {
template: `
<div>
<header>
<slot name="header"></slot>
</header>
</div>
`
};
const helloVue = {
components: {
baseLayout
},
data() {
return {
dynamicSlotName: "header"
}
}
}
Vue.createApp(helloVue).mount('#app')
</script>
</html>
解决方案
插槽名称应该用小写而不是camelCase
likedynamicslotname
而不是dynamicSlotName
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="https://unpkg.com/vue@next"></script>
<script src="https://unpkg.com/lodash@4.17.20/lodash.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/axios@0.12.0/dist/axios.min.js"></script>
</head>
<body>
<div id="app">
<base-layout>
<template v-slot:[dynamicslotname]>
<p>Hello</p>
</template>
</base-layout>
</div>
</body>
<script>
const baseLayout = {
template: `
<div>
<header>
<slot name="header"></slot>
</header>
</div>
`
};
const helloVue = {
components: {
baseLayout
},
data() {
return {
dynamicslotname: "header"
}
}
}
Vue.createApp(helloVue).mount('#app')
</script>
</html>
有关更多详细信息,请查看https://v3.vuejs.org/guide/template-syntax.html#caveats
推荐阅读
- javascript - 下载时加密 zip 文件夹,然后使用 Node.js 解密?
- python - 多行 Seaborn 条形图
- python - Python - 在保持类封装的同时从其他类访问类属性/方法的选项?
- wordpress - WooCommerce 在产品页面上显示分类类别和子类别
- java - Java arrayList 对象数据 int 限制
- javascript - React HOC 功能不会将道具传播到 html 元素中
- c++ - 将函数的输出作为输入分配给另一个c ++
- node.js - 带有 https 目标的 Http 代理
- xamarin - 如何更改 Xamarin 表单中 GroupDisplayBinding 的背景颜色?
- kubernetes - 提高 init 容器 kubernetes 中命令的可读性