webpack如何忽略import语句

在我的main.jsimport router from './router'

现在我想实现这样的webpack配置
1.命令行npm run dev的时候不引router,也就是相当于不写这行代码
2.命令行npm run build的时候引router

还有就是如何忽略某些特定字符之间的内容,比如:

/**注释掉以下**/
import router from './router'
/**注释掉以上**/

以下是我的项目结构,求解!
我的项目结构

阅读 4.4k
2 个回答

import是静态的,运行无法加载,可以换成require进行环境变量的判断。

同楼上的答案。另外补充下,import 属于语法糖,是在编译时执行的。执行过程会转换成 require。所以在语法上不允许在 顶部部以外写 import 导入(非import())。
require 是运行时执行的,所以可以写在条件判断里面。

附上写法:

import router from './router'

改为 
const options = { }
if(process.env.NODE_ENV === 'router'){
   options.router = require('./router')
}

const vm = new Vue(options)
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题