我在vue-router和vue-strap中使用Vue。我尝试从vue-strap注册组件,但示例如下所示:
var alert = require('vue-strap').alert;
new Vue({
components: {
alert: alert
}
})另一方面,vue-router不创建Vue对象。
Vue.use(VueRouter);
const router = new VueRouter({
history: true,
linkActiveClass : 'active'
});
router.map({
'/': {
component: Home
}
});
const App = Vue.extend(Index);
router.start(App, '#root');那么我如何声明我的组件呢?
发布于 2016-09-09 21:17:36
这是我在vue应用程序中的当前设置
var Vue = require('vue');
var VueRouter = require('vue-router');
// Use
Vue.use(require('vue-resource'));
Vue.use(VueRouter);
// Components
var site = Vue.component('site', require('./views/site/component.vue'));
var home = Vue.component('home', require('./views/home/component.vue'));
var search = Vue.component('search', require('./views/search/component.vue'));
var index = Vue.component('index', require('./views/index/component.vue'));
// Router
var router = new VueRouter({
history: true
});
router.map({
'/': {
component: index
},
'/search': {
component: search
},
'/profile': {
component: home
}
})
// Start App
router.start(site, 'body');所有“主要”组件都是用.component全局声明的。我在组件级别需要的一切都是用.extend声明的。在vue-router中,'site‘组件(在我的例子中)充当$root。
Topmenu /侧边栏是在组件部分的站点组件中声明的。在'site‘模板中,我只有和其他共享组件,比如topmenu /侧边栏。
发布于 2017-07-07 22:00:44
你可以试一下,
import { alert } from 'vue-strap'
Vue.use(VueRouter);
const router = new VueRouter({
history: true,
linkActiveClass : 'active'
});
router.map({
'/': {
component: alert
}
});
const App = Vue.extend(Index);
router.start(App, '#root');https://stackoverflow.com/questions/39399195
复制相似问题