首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >构建原生模块作为电子应用程序的一部分

构建原生模块作为电子应用程序的一部分
EN

Stack Overflow用户
提问于 2020-09-11 06:43:27
回答 1查看 794关注 0票数 1

我目前正在构建一个使用电子、react、typescript和NodeJS原生模块的应用程序。我使用提供的样板代码(https://github.com/electron-react-boilerplate/electron-react-boilerplate)启动了应用程序。

我希望在应用程序中添加一些本机模块,最好是在应用程序中编写为库。目前,我已经编写了一个C++模块来读取一些内存统计数据。当在开发模式下运行时,我可以通过如下导入模块来使模块工作:const native = require('./lib/memmonitor/build/Release/memmonitor.node');'

我遇到的第一个问题是,模块需要通过进入控制器并手动运行electron-rebuild来手动构建。理想情况下,这应该通过运行yarn installyarn electron-rebuild (两者都在样板package.json中定义)来触发;然而,这些命令似乎只关心通过node_modules包含的本机模块。

我遇到的第二个问题是,当打包应用程序时,节点模块没有包含在最终构建中,导致电子应用程序由于找不到节点模块而无法启动。

是否可以将本机模块构建为应用程序构建的一部分,并将其包含在最终包中,或者是否可以为每个自定义本机模块提供单独的代码库,使应用程序将库作为依赖项包括在内?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-25 21:58:16

因此,在断断续续地试图弄清楚如何完成这项工作几周后,结果发现答案是使用yarn的一个线条。

“诀窍”是使用yarn add link:../path/to/native/module将模块作为依赖项添加到项目中。这反过来告诉yarn/webpack/electron-builder有关模块的信息,这些工具将正确地处理模块的构建。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63838575

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档