gpt4 book ai didi

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

转载 作者:数据小太阳 更新时间:2023-10-29 05:26:10 32 4
gpt4 key购买 nike

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

我看过 Paul Kinlan ( the Chrome Apps office hours - NodeJS in chrome packaged apps ) 的 YouTube 视频,但无法运行代码。我也试过 browserify 但没有成功。

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

提前致谢,马诺杰。

最佳答案

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

传统上对我来说唯一真正棘手的一点是导出功能以供我的网络应用程序使用,因为您无权访问 require()。我通常只是创建一个特殊的模块来导出我想要访问的所有全局符号,并将其用作我的入口点。

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

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

然后创建一个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",
}
};

然后我可以打包它并将生成的包包含在我的应用程序中,然后现在使用全局变量 globals

我不确定 Edge.js 是否有效,但我认为不太可能将其 webpack/浏览器化到 web/chrome 应用程序中,因为它们不支持 native 绑定(bind)和进程间通信有很大不同。我只是不确定它是如何工作的。

(但您也许可以使用不同类型的 IPC 实现您自己的与 .net 应用程序的互操作)

关于javascript - 是否可以使用 node.js 模块编写 Chrome 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25031527/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com