Мне интересно, могу ли я экспортировать два объекта из компонента Vue.js, чтобы другие компоненты могли выбирать, какой из них использовать.
Вот пример, с которым я работаю:
О FooBar.vue:
<template>
<span>{{ text }}</span>
</template>
<script>
export default {
name: 'Foo',
data: () => {
return {
text: 'foo'
}
}
}
const Bar = {
name: 'Bar',
data: () => {
return {
text: 'bar'
}
}
}
export { Bar }
</script>
Затем я импортирую Foo и Bar в About.vue:
<template>
<div class="about">
<h1>This is the about page</h1>
<Foo /><br/>
<Bar />
</div>
</template>
<script>
import Foo from './AboutFooBar'
import { Bar } from './AboutFooBar'
export default {
name: 'About',
components: {
Foo,
Bar
},
data: () => {
return {
}
}
}
</script>
Я ожидаю увидеть на странице:
This is the about page
Foo
Bar
... но вместо этого я вижу:
This is the about page
Foo
Похоже, он не распознает Bar. Я ожидал, что смогу настроить выбор объекта для импорта, и данные этого объекта будут определять, что будет заполнено в шаблоне (таким образом, текст «foo» для компонента Foo и «bar» для компонента Bar).
Есть ли способ сделать то, что я пытаюсь сделать? Спасибо.