我对VueJs不熟悉,所以记住这一点。
我有像这样的单一模板组件
<template>
<div class="testing-container">
<button v-on:click="toggleContainer" class="btn btn-success btn-sm show-testing-container">Testing <i v-if="!show" class="fa fa-chevron-up"></i><i v-if="show" class="fa fa-chevron-down"></i></button>
<div v-if="show" class="testing-frame">
<vue-tabs active-tab-color="#e74c3c"
active-text-color="white"
type="pills"
:start-index="1"
direction="vertical"
>
<v-tab title="First tab" icon="ti-user">
First Tab
</v-tab>
<v-tab title="Second tab" icon="ti-settings">
Second tab content
</v-tab>
<v-tab title="Third tab" icon="ti-check">
Third tab content
</v-tab>
</vue-tabs>
</div>
</div>
</template>
<script>
export default {
data() {
return {
show: false,
};
},
created() {
},
methods: {
toggleContainer() {
if(this.show){
this.show = false;
}else{
this.show = true;
}
},
}
}
</script>
我试图加载另一个名为vue-tabs
的组件,但我一直在
[Vue warn]: Failed to mount component: template or render function not defined. found in ---> <VueTabs>
这是我的构造函数:
/**
* Import Vue Tabs
*/
import VueTabs from "vue-nav-tabs"
/**
* Vue Nav Tabs
*/
Vue.component('vue-tabs', VueTabs)
/**
* Units Testing Component
*/
Vue.component('unit-testing',
require('./components/testing/UnitTesting.vue')
);
const app = new Vue({
el: '#app',
});
Gulp Watch没有抛出任何未找到的错误,所以我真的很困惑这里发生了什么。我提前感谢您的帮助。
答案 0 :(得分:7)
使用es6 imports:
import VueTabs from "vue-nav-tabs"
将从模块导入默认导出为VueTabs
(在这种情况下是vue插件,而不是您尝试使用的组件)。
虽然:
import { VueTabs } from "vue-nav-tabs"
将从模块导入VueTabs
导出。