node_modules是否无法放工程外

背景:
想把node_modules独立成一个仓库,与工程平级(根据查找规则是可以引用到的),达到各工程复用

问题:
vscode可以引用到代码,但是creator里编译不过,运行时也报错:image


(tslib模块没有导入成功,但是浏览器上是有下载的)

是不是就只能放工程里了

2.4.10的话可以用这段代码加上路径,3x的话,不太了解,可以自己尝试打印编辑器上下文,找到对应的path列表

if (CC_EDITOR) {
    const projectScriptsModule = process.NativeModule._cache[process.resourcesPath + '/app.asar/editor/page/project-scripts.ccc'];
    // cc.log(">>>>",projectScriptsModule);
    if (!projectScriptsModule.isAddCustomPaths) {
        const projectPath = Editor.remote.AssetDB.assetdb.cwd;//项目路径
        const up_Dir_node_modules_path = projectPath + "/../../node_modules";
        projectScriptsModule.paths.push(up_Dir_node_modules_path);
        projectScriptsModule.isAddCustomPaths = true;
        cc.log("add editor node modules path:", projectScriptsModule.paths);
    }
    // cc.log(">>>>>>", projectScriptsModule.paths);
}

关帖,是tslib的版本不对