我为Cordova构建编写了一个after_prepare钩子,它从最终构建中删除了node_modules文件夹:
#!/usr/bin/env node /** * The node modules we want to remove from the build prior to building * @type {Array} */ var foldersToRemove = ["platforms/android/assets/www/node_modules", "platforms/ios/www/node_modules"]; var fse = require('fs-extra'); var path = require('path'); var rootdir = process.argv[2]; foldersToRemove.forEach(function(folder) { var rmFolder = path.join(rootdir, folder); fse.remove(rmFolder, function(err) { if (err) { return console.error(err); } else { console.log(rootdir); console.log("fse folder removed success!") } }); });
当我cordova prepare android -d
在CLI中运行时,这对我有用,但在切换到iOS时,它失败并出现以下错误:
env:node\r:没有这样的文件或目录Hook失败,错误代码为127:
我试过只引用ios平台文件夹,它发出相同的错误消息.