是否可以使用node.js模块编写Chrome应用程序?

我想写一个Chrome应用程序,但是我也想用Edge.js与一些.Net代码进行互操作。 现在我已经在Nodejs应用程序中尝试过了,但是无法知道如何在Chrome应用程序中执行此操作。

我观看了Paul Kinlan的YouTubevideo( Chrome Apps办公时间 – Chrome打包应用程序中的 NodeJS),但无法运行代码。 我也尝试了没有成功browserify。

是否有工作示例使用Chrome应用程序中的任何节点模块(因为可用资源看起来比较旧)。

在此先感谢,马诺吉。

       

网上收集的解决方案 "是否可以使用node.js模块编写Chrome应用程序?"

我已经在chrome封装的应用程序中运行为node.js编写的代码,并且使用了发布到npm的模块,使用了browserify或webpack。

对于我来说,唯一真正棘手的问题是我的web应用程序正在导出function,因为您无法访问require() 。 我通常只是创build一个特殊的模块,导出我想要访问的所有全局符号,并将其用作我的入口点。

例如,使用webpack,我会创build一个名为globals.js的文件:

 module.exports = exports = { a: require('a'), b: require('b'), ... } 

然后创build一个webpack.config.js

 module.exports = { context: __dirname + "/js", entry: { globals: [ "globals.js", ], }, output: { // Make sure to use [name] or [id] in output.filename // when using multiple entry points path: __dirname + "/js/generated", filename: "[name].bundle.js", chunkFilename: "[id].bundle.js", library: "[name]", libraryTarget: "umd", } }; 

然后,我可以打包,包括生成的包在我的应用程序,现在使用全局variablesglobals

我不确定Edge.js的工作原理,但我不认为它有可能将webpack / browserify转换成web / chrome应用程序,因为它们不支持本地绑定,而且进程间的通信也很多不同。 我只是不知道它是如何工作的。

(但也许你可以使用不同types的IPC来实现你自己的.net应用程序的互操作)