在vue-cli项目中,在进行路由的配置时,npm run serve运行时没有报错,但是浏览器的调试窗口报了vm.$options.template.charAt is not a function这种错。
目录结构(部分)
-
page--------Home.vue
-
router--------index.js
- main.js
代码片段
main.js
import Vue from 'vue'
import App from './App.vue'
import router from './router/index'
Vue.config.productionTip = false
new Vue({
router,
render: h => h(App),
}).$mount('#app')
Home.vue
<template>
<div>123</div>
</template>
index.js
import Vue from 'vue'
import VueRouter from 'vue-router'
Vue.use(VueRouter)
import Home from "../page/Home"
let router = new VueRouter({
routes: [
{path:"/",component:{template:Home}}
]
})
export default router
执行上面的代码浏览器会报vm.$options.template.charAt is not a function错误。
解决方案
只要将index.js中的{path:"/",component:{template:Home}}代码改为{path:"/",component:Home}就可以了。因为router里引入的Home相当于组件,并不是代码模板,所以才会报这种错误。
