在多台机器上使用 Foundation-CLI / Gulp

Using Foundation-CLI / Gulp on Multiple Machines

我正在开展一个项目,该项目使用跨多台计算机的网站基础。我已经通过命令行应用程序(版本 2.1.0)安装了基础。我的项目文件夹是通过 Dropbox 同步的,如果我在创建项目的原始机器上 运行 "foundation build" 或 "foundation watch",它工作正常。

但是,当我尝试在我的第二台计算机上 运行 "foundation watch" 时(使用相同版本的 foundation-cli 和 gulp),我收到此错误。唯一的区别是一台计算机的节点为 5.7.0,另一台计算机的节点为 5.0.0。其他一切(foundation-cli、bower、gulp)都是 运行ning 相同的版本。有什么想法可以解决这个问题吗?谢谢

这是错误:

> foundation-sites-template@1.0.0 start /Users/nick/Dropbox/Sync/Web Site/www/wp-content/themes/foundation 
> gulp 
module.js:339 
throw err; 
^ 
Error: Cannot find module '../lib/completion' 
at Function.Module._resolveFilename (module.js:337:15) 
at Function.Module._load (module.js:287:25) 
at Module.require (module.js:366:17) 
at require (module.js:385:17) 
at Object. (/Users/nick/Dropbox/Sync/Web Site/www/wp-
content/themes/foundation/node_modules/.bin/gulp:13:18) 
at Module._compile (module.js:425:26) 
at Object.Module._extensions..js (module.js:432:10) 
at Module.load (module.js:356:32) 
at Function.Module._load (module.js:311:12) 
at Function.Module.runMain (module.js:457:10) 
Error: foundation-sites-template@1.0.0 start: `gulp` 
Exit status 1 
at EventEmitter. (/usr/local/lib/node_modules/foundation-
cli/node_modules/npm/lib/utils/lifecycle.js:214:16) 
at emitTwo (events.js:87:13) 
at EventEmitter.emit (events.js:172:7) 
at ChildProcess. (/usr/local/lib/node_modules/foundation- 
cli/node_modules/npm/lib/utils/spawn.js:24:14) 
at emitTwo (events.js:87:13) 
at ChildProcess.emit (events.js:172:7) 
at maybeClose (internal/child_process.js:818:16) 
at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5)

编辑:我已经在我的另一台计算机上更新到节点 5.7.0,所以版本在任何地方都是一样的。

这看起来像 gulp 的包有问题。我有同样的错误(虽然没有使用基础)并在 "npm cache clean" 为我修复它后重新安装 gulp,你没有提到已经尝试过。

原来我可以在多台电脑上使用它。您只需删除 node_modules 文件夹(例如,rm -r node_modules),然后当您想在另一台机器上使用时,请执行 npm install 为该环境取回节点模块。这有点烦人,因为在通过 Dropbox 或 NextCloud 执行此操作时有太多文件要同步。