我有两个组件正在尝试使用对象映射动态加载。
它适用于基于选项的选项,但是当我尝试加载类似的基于类的组件时,得到的_currentTab
是undefined
。我尝试使用new SearchBar
,但这也不起作用。
Vuex模块。
export default class Sidebar extends VuexModule {
private _currentTab: object = tabs.SearchBar;
}
标签表
import SearchBar from "@/components/Tabs/SearchBar.vue";
import Info from "@/components/Tabs/Info.vue";
export default {
SearchBar : SearchBar,
Info : Info,
}
侧边栏组件
<div class="tab">
<component v-bind:is="currentTab"></component>
</div>
import {Component, Vue} from 'vue-property-decorator';
import {mapGetters} from 'vuex';
@Component({
computed: {
...mapGetters({
currentTab : 'currentTab',
}),
},
})
export default class Sidebar extends Vue {
}
信息组件(基于选项)
export default {
data() {
return {}
},
}
SearchBar组件(基于类)
import {Component, Vue} from 'vue-property-decorator';
import {mapActions} from 'vuex';
@Component
export default class SearchBar extends Vue {
}
答案 0 :(得分:0)
对于动态导入,我使用:
components: {
History: () => import("./History"),
MenuCardRight: () => import("@/components/MenuCardRight")
},