当我在本地工作时,我想在两个或更多(nwjs和其他类型)项目之间共享代码。文件夹结构:
- 项目1
- 项目2
共享代码
在发布应用程序时,我将外部文件构建到每个项目应用程序内的文件中。
但是我无法访问node-webkit / nwjs app文件夹之外的文件。
我尝试过这样的事情:
在清单文件中设置“chromium-args”:“ - allow-file-access-from-files”但我认为这是默认值。
使用file:///
和chromium-extension:///
前置相对路径,但我认为这仅适用于绝对路径?
使用path.relative( process.cwd(), "../shared_code/scripts/controllers/searchController.js" );
该应用程序的用户可以将其放在计算机上的任何位置。
是否可以在本地从nwjs项目文件夹外部加载js和css文件和图像?
nwjs sdk版本0.19.5
答案 0 :(得分:0)
我在尝试在NW.js应用程序之外加载图像时遇到了类似的问题。我发现这解决了我的问题。尝试将此添加到您的JSON清单文件中。这对我有用......
"chromium-args": "--allow-file-access-from-files --allow-file-access --user-data-dir"
就这么你知道,我原本试过这个......
"chromium-args": "--allow-file-access-from-files --allow-file-access --user-data-dir --mixed-context"
但它停止了jquery加载。
然后,您可以使用file:///
访问文件,并在计算机的任何位置使用绝对路径。
我希望有所帮助。
答案 1 :(得分:0)
对于共享代码,当代码是(或可以是)节点模块时,能够npm link
将其放入项目中非常有帮助。 (它与NW.js应用程序的工作方式与Node.js相同:)
cd shared-code
npm link
cd ../project-1
npm link shared-code
cd ../project-2
npm link shared-code