javascript - v-runtime-template vuejs 无法访问根属性
问题描述
这是我的页面.vue
<template>
<div>
<v-runtime-template :template="template"></v-runtime-template>
</div>
</template>
<script>
import VRuntimeTemplate from "v-runtime-template";
export default {
data: () => ({
template: `
<span>{{sample}}</span>
`
}),
components: {
VRuntimeTemplate
},
computed:{
sample(){ return "sampledata" }
}
};
我的 package.json:
"vue": "^2.6.11",
"v-runtime-template": "^1.10.0"
问题:我在控制台上收到此错误:
vue.esm.js?a026:628 [Vue 警告]:属性或方法“sample”未在实例上定义,但在渲染期间被引用。通过初始化属性,确保此属性是反应性的,无论是在数据选项中,还是对于基于类的组件。
我已经阅读了一些 github 问题,就像这样告诉我类似的问题。
也许有人可以帮助我如何解决我使用这个 v-runtime-template 库的简单实现?非常感谢。
解决方案
我不知道这个技巧如何解决我的问题,但这真的救了我的命。 H.Eden的原始来源因此,我 通过 创建新的 vue 文件作为 v-runtime-template pivot 来解决我的问题。
运行时枢轴:vue:
<template>
<v-runtime-template :template="`<div>${template}</div>`"></v-runtime-template>
</template>
<script>
import VRuntimeTemplate from "v-runtime-template";
export default {
props:['template','props','listener'],
components:{
VRuntimeTemplate
},
name:"RuntimePivot",
data(){
return {
myname:'everything'
}
},
}
</script>
然后我将 runtimePivot.vue 模板导入到我的 Page.vue
<template>
<div>
<RuntimePivot :template="template" :props="properties" />
</div>
</template>
<script>
import RuntimePivot from "./RuntimePivot";
export default {
components:{
RuntimePivot
},
name:"Page",
data(){
return {
template:`<span>{{key}}</span>`,
properties:{key:"value"}
}
},
}
</script>
更好的解决方案仍然向你们开放。
推荐阅读
- macos - 完全禁用或关闭 macbook pro 上的触控栏
- sql - 获取插入 postgres 的最低可用列号
- python - 如何用python创建一个ldap测试服务器?
- mongodb - 以复杂的方式在 No-SQL MongoDB 中写下 $subtract
- javascript - 如何使用全局安装的 npm 包运行我的本地 Angular 项目?
- python - Discord Python - 找不到ffmpeg
- sql - 在 4 行之后对所有行进行分组并创建第 5 行分组行
- html - 如何设计这个编辑图标?
- postgresql - 准备 konga 数据库时创建与 Postgresql 的连接时出错
- python-3.x - 创建多个字典时,分块列表抛出“zip 参数 #2 必须支持迭代”