为什么我不能在vue-router route.js中使用require?

时间:2019-10-30 15:45:41

标签: javascript vue.js import vue-router require

使用vue-router时,标准设置为

main.js需要routes.js文件,该文件看起来像这样

//routes.js
import Register from './components/Register'
import Login from './components/Login'

module.exports = [{
            path: `/`,
            component: Login,
        }, {
            path: `/register`,
            component: Register,
        }]

我的问题是为什么我只能做

//routes.js
module.exports = [{
            path: `/`,
            component: require('./components/Login'),
        }, {
            path: `/register`,
            component: require('./components/Register'),
        }]

尝试时,出现此控制台错误

Vue warn]: Failed to mount component: template or render function not defined.

found in

---> <Anonymous>
       <App> at src/App.vue
         <Root>

1 个答案:

答案 0 :(得分:-1)

**导入和要求的工作方式有所不同,请参见下面的链接,其中有关于该主题的优质文档。 ** es6 featuresrequire how Actually Works **请参阅文档,了解节点js在模块下如何工作。模块如何工作。nodejs设计模式是什么(节点js如何在立即调用的函数表达式中包装我们的代码并将代码传递到v8引擎中)

您可以简单地简化您的route.js文件

component :()=> import('./ components / Register.vue')或 组件:require('./ components / Login.vue')。default

两者都可以

[{path:'/',component :()=> import('./ components / Register.vue')}, {path:'/ register',component:require('./ components / Login.vue')。default}];