gonacli
gonacli copied to clipboard
windows上无法使用golang编写node native addon给electron干活
今天看到了这个文章 请问是否遇到了这个问题?现在支持Windows是么? https://www.jianshu.com/p/2bb52d13d734
今天看到这篇文章 请问是否遇到了这个问题?现在支持Windows是什么? https://www.jianshu.com/p/2bb52d13d734
你解决了吗?
今天看到了这个文章 请问是否遇到了这个问题?现在支持Windows是么? https://www.jianshu.com/p/2bb52d13d734
gonacli 是有处理的
我尝试了一下,我这里使用的是Vue CLI Plugin Electron Builder。在使用gonacli make和在output目录下执行npm run build:release以后,会在build\Release\会产生*.node文件。所需要的两个文件分别是生成目录根目录中的动态链接库文件(Windows下为.dll,Linux应该是.so)以及*.node文件。只需要这两个文件,将文件复制到vue-electron-build项目的src目录中随后需要设置vue.config.js的webpack配置。
const { defineConfig } = require('@vue/cli-service')
module.exports = defineConfig({
transpileDependencies: true,
pluginOptions: {
electronBuilder: {
nodeIntegration: true,
preload: 'src/preload.js',
chainWebpackMainProcess(config) {
config.module
.rule("node")
.test(/\.node$/)
.use("native-ext-loader")
.loader("native-ext-loader")
},
chainWebpackRendererProcess: (config) => {
config.module
.rule("node")
.test(/\.node$/)
.use("native-ext-loader")
.loader("native-ext-loader")
.options({rewritePath:"src"})
},
}
},
lintOnSave: false // 添加此行来禁用 ESLint 检查
})
然后在background.js中直接可以使用:
const addon = require("./**.node")
问题不大主要是需要webpack的一个node文件loader,踩坑时间都在这儿了