关于在vue项目中模块化使用

来源:2-4 JavaScript模块化开发

慕哥120641

2022-07-07

老师,在vue项目中可以使用module规范(import导入),也可以使用CommonJS规范(使用require导入),是vue脚手架底层做了封装吗?它的实现思路大致是怎样的,不会同时设置两个type的属性值吧,感觉越想越绕

写回答

2回答

入门级全栈专家

2022-07-16

模块化只针对开发环境,生产环境是不需要模块化的,所以webpack打包之后的代码既不是common 也不是esmodule,就是普通js

0
0

北瑶

2022-07-07

在vue代码中的模块化代码,并不是最终运行的代码,浏览器运行的是webpack打包之后的结果。如果你使用vite,你会发现开发不打包,因为浏览器认识esm,但是不认识commonjs,所以你使用vue-cli创建的vie项目,运行之前必须打包。
0
2
北瑶
回复
慕哥120641
1:你的理解不对,webpack 不是转为了 esm , 是根据具体配置进行的转换,可能是 umd amd iife 等等,你可以具体看一下webpack 打包相关的内容。 2:vite 开发时不打包是它的特性之一,而且现代浏览器原生已经支持了 ESM 模块化,不打包也是可以运行的,也不需要编译代码。
2022-07-08
共2条回复

Node.js工程师养成计划 保姆级教程 快速入门实战收尾

保姆级教程,从0起步,吃透Node完整技术体系

257 学习 · 94 问题

查看课程