Код в файле:
<template>
<component v-bind:is="bbc"></component>
</template>
<script>
import bbc from './bbc.vue';
export default {
name: 'ShowRoom2',
};
</script>
./bbc.vue
<script>
export default {
name: 'bbc',
props: {
msg: String,
},
mounted() {
console.log('bbc is mounted');
},
render() {
if (this.func) this.func();
return (
<div class="bbcMyClass">
<h1>bbc: <span>Pal</span> <span>{this.msg}</span></h1>
</div>
)
}
};
</script>
Воспроизведение
src/components/ShowRoom2.vue
Да, область действия в шаблоне не совпадает с областью действия сценария. Если вам нужны данные, вам нужно объявить их внутри части определения компонента. Для вашего случая, я думаю, свойство 'data' должно работать
import bbc from './bbc.vue';
export default {
name: 'ShowRoom2',
data() {
return {
bbc: bbc,
};
},
};
Тем не менее, шаблонная часть вашего кода также выглядит странно. Не могли бы вы объяснить, что вы пытаетесь сделать?
<component>
thingie? так что следующий шаг, который я собираюсь сделать, это <component class = "кое-что" data-кое-что = "кое-что" ...> <...>
is
без: