diff --git "a/mini/framework/\345\237\272\347\241\200\345\272\223/\345\237\272\347\241\200\345\272\223 2.x \345\215\207\347\272\247.md" "b/mini/framework/\345\237\272\347\241\200\345\272\223/\345\237\272\347\241\200\345\272\223 2.x \345\215\207\347\272\247.md" index 79a4e0445..cb09ac553 100644 --- "a/mini/framework/\345\237\272\347\241\200\345\272\223/\345\237\272\347\241\200\345\272\223 2.x \345\215\207\347\272\247.md" +++ "b/mini/framework/\345\237\272\347\241\200\345\272\223/\345\237\272\347\241\200\345\272\223 2.x \345\215\207\347\272\247.md" @@ -42,16 +42,12 @@ 基础库 2.x 的编译模式更为严格,以下是一些常见编译问题。 -### Q:提示“Please set enableNodeModuleBabelTransform to true or add "xxx" to node_modules_es6_whitelist in mini.project.json for node_modules babel transform”,如何处理? - -A:一般情况下是由于存在 ES6 以上语法导致。 -- 看报错的模块是否是 node_modules 内的模块。 - - 如果不是,则说明存在外部资源引用,检查本地项目下是否有源码文件做了 npm link 。 - - 如果是,按照提示添加 enableNodeModuleBabelTransform 或添加 node_modules_es6_whitelist,看问题是否解决。 -- 如果仍然未解决,可能有如下两种可能: - - 该依赖并非存放在 app.json 所在目录下的 node_modules,而是上级目录或者 npm link 到了外部目录,这种情况下需要将该依赖移动到 app.json 所在目录下的 node_modules。 - - 该依赖为多级嵌套 node_modules 内,目前由于各种历史原因,并未支持多级 node_modules 嵌套解析,这种情况下建议安装一遍相同版本依赖,做成小程序的直接依赖即可解决。 -- 如果还未解决,准备好复现代码压缩包,联系支付宝技术支持排查。 +### Q:提示 "module xxx contains non-es5 syntax or broken syntax",如何处理? + +A:一般情况下是由于 `node_modules` 中存在 ES5 以上语法导致。 + +- 为了提高小程序编译性能,默认不会自动为 `node_modules` 中的代码转换语法,如果需要使用包含非 ES5 语法的 NPM 包,需要开启 [transpile](https://opendocs.alipay.com/mini/03dbc3#transpile) 配置项。 +- 如果开启后仍未解决,准备好复现代码压缩包,联系支付宝技术支持排查。 ### Q:提示“SyntaxError: identifier(foo) is disallowed in sjs”,如何处理?