【发布时间】:2020-12-05 03:40:14
【问题描述】:
我有一个组件 (prism-editor),它只接受来自 v-model="code" 的代码。这意味着,代码必须通过code发送到组件:
代码.vue
<template>
<prism-editor class="my-editor" v-model="code"
:highlight="highlighter" :line-numbers="numbers"/>
</template>
<script>
import { PrismEditor } from 'vue-prism-editor';
export default {
components: {
PrismEditor,
},
data: () => ({
code: this.$slots,
numbers: true
}),
}
</script>
我想从一个名为 Code 的父组件中绑定它:
页面.vue
<template>
<code language="c">
int main() {
printf('Hello World!');
}
</code>
<template>
<script>
import Code from 'code.vue'
export default {
components: {
'code': Code
}
}
</script>
在我的Code 组件中,我必须找到一种方法来获取槽数据并将其直接传递给code 变量以发送到v-model='code'。不幸的是,以下不起作用,因为我不知道如何从父 slot 获取数据:
data: () => ({
code: this.$slots // Which obviously doesn't work...
})
换一种说法,我只想获取在code标签内发送的所有原始内容:
<code>all this content...</code>`
这可能吗?
.
├── Code.vue
└── Page.vue
【问题讨论】:
-
请详细说明组件结构
-
@BoussadjraBrahim 我已经编辑了我的问题,我不知道你需要什么信息。
-
我的意思是父组件和子组件以及它们的结构
-
@BoussadjraBrahim 我添加了更多信息,希望对您有所帮助
标签: javascript vue.js prismjs vuejs-slots