0x1
这是个2020年的老问题了,只是记录下,因为现在IE浏览器占用率越来越少,并且这个问题可能被官方以其他方式解决。
产品需要调用node_modules的模块babel才能用IE浏览器访问,但是默认安装的babel模块貌似获取的路径是tomcat启动路径,查看到就是获取的进程路径
需要做如下修改,配置文件node_modules/@babel/core/lib/config/files/plugins.js,在97行左右:
function resolveStandardizedName(type, name, dirname = process.cwd()) {
//function resolveStandardizedName(type, name, dirname = process.env.NODE_PATH) {
const standardizedName = standardizeName(type, name);
try {
return _resolve().default.sync(standardizedName, {
//basedir: dirname
basedir: process.env.NODE_PATH
//basedir: "/data/app/apache-tomcat-8.5.43/node_modules"
});
上面一共显示了两个修改方法:
- 把basedir修改为NODE_PATH变量
- 直接指定 node_modules 的值