require 编译报错怎么解决

gulp编译的第三方es6的库,node环境下正常使用。creator里require时各种奇葩的 app.aser 报错,求解决方案

编译后是这种样子的,很像白鹭的编译

(function (f) {
if (typeof exports === “object” && typeof module !== “undefined”) {
module.exports = f()
} else if (typeof define === “function” && define.amd) {
define([], f)
} else {
var g;
if (typeof window !== “undefined”) {
g = window
} else if (typeof global !== “undefined”) {
g = global
} else if (typeof self !== “undefined”) {
g = self
} else {
g = this
}
g.b3 = f()
}
})(function () {
var define,
module,
exports;
return (function e(t, n, r) {
function s(o, u) {
if (!n[o]) {
if (!t[o]) {
var a = typeof require == “function” && require;
if (!u && a)
return a(o, !0);
if (i)
return i(o, !0);
var f = new Error(“Cannot find module '” + o + “’”);
throw f.code = “MODULE_NOT_FOUND”,
f
}
。。。。

什么版本?报什么错?require 什么文件出现的报错?

es6, babel插件编译的都有问题,已经确定是一些关键字冲突。

有没一个ccc的保留关键字列表,尽量避免使用的

ccc 的关键字除了父类的公有 API(这肯定不能冲突),都是以下划线或者特殊符号命名的,一般不会有冲突。

遇到过很多次同类错误了。常见的命名 _temp , _data 放组件里好像都有问题。

另外有些前后端通用的库, 后端是运行时才会提示是否出错,而ccc里面在编辑器里预编译时貌似就被执行了,导致一些库因为依赖顺序不对而报错

库应该用插件脚本啊,有依赖顺序的自己 concat 文件比较好。而且插件脚本可以设置不在编辑器中加载的。

只是服务器和客户端共通的算法库和model,依赖关系复杂而且经常要修改的,也没法作为插件来用

这些都好解决,唯一不好解决的是项目后期复杂了,只能自己写编译脚本