为什么vue.config.js要用node的形式写?

image.png
用require 这是node的写法,为什么不能用import引入呢?还有webpack配置的文件为什么也是用node写的?

阅读 3.6k
2 个回答

1.当前nodejs还不支持es6后写法,据说后期会支持
2.webpack是个以nodejs为基础的打包工具,就如vue起的本地服务是webpack插件,但是底层还是nodejs在运行。
webpack核心功能打包文件也是基于nodejs的file模块来写的

总结一下:webpack是众多npm包中的一个,npm是nodejs官方包管理工具, Node.js 就是运行在服务端的 JavaScript,

现在前端项目,包括项目源码工程环境代码两部分。

项目源码,是编译、打包、处理后,要部署到服务器上去,最终传到客户端让浏览器跑的。
环境代码,是你的项目打包时候,执行的node程序,以及其他各种语言的处理程序,用来处理你的项目源码(编译到指定版本,压缩之类的)。

环境工程代码会处理项目源码,所以可以在处理过程中,给源码按照指定的规则进行处理,比如注入环境标识,按照指定的版本进行编译啥啥的。

你的src里面的从main开始,以及vue组件代码,都是项目源码,里面不管你用什么语法写jsx,es6,ts啥啥的,只要你在工程环境代码里配置好了处理规则,就能打包完成。这些源码,是不会用node去执行的。你的源码可以用export这些语法,因为这些语法会被处理掉。

vue.config是工程环境配置代码,是要node去执行的,然后按照里面的配置再去处理你的源码。node现在还不支持es6语法,所以你这个文件,是不能不处理下,直接让node执行的。

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