| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- const fs = require('fs')
- const axios = require('axios')
- const { exec } = require('child_process')
- const { build } = require('electron-builder')
- const fileContents = fs.readFileSync('dist/config/appconfig.json', 'utf-8')
- const appConfig = JSON.parse(fileContents)
- const package = fs.readFileSync('package.json', 'utf-8')
- const pkg = JSON.parse(package)
- pkg.version = appConfig.version
- fs.writeFileSync('package.json', JSON.stringify(pkg, null, 2))
- // 打包之前清空目录
- exec('rd/s/q dist_electron')
- axios.get(appConfig.apiUrl).then((res) => {
- const data = res.data.data
- console.log(data)
- const config = {
- productName: appConfig.appName,
- directories: {
- output: 'dist_electron'
- },
- files: [
- 'dist',
- 'main.js',
- ],
- nsis: {
- oneClick: false,
- allowToChangeInstallationDirectory: true
- },
- win: {
- icon: 'dist/favicon.ico',
- target: [
- 'nsis'
- ]
- },
- // 应用更新服务器地址,配置了 publish 才会生成 latest.yml 文件,和 .exe 文件一起放到该服务器地址下
- publish: [
- {
- provider: 'generic',
- url: data.pcUpdateUrl ?? ''
- }
- ]
- }
- build({
- config
- })
- }).catch((err) => {
- console.error(err)
- })
|