Почему в electron-builder ссылки на svg имеют не верный путь?
это ссылка при electron:serve
background-image: url(localhost:8080/img/arabian.29710604.svg);
ссылка в electron:build
background-image: url(df-installer-beta/img/arabian.29710604.svg);
а должна быть
background-image: url(df-installer-beta://./img/arabian.29710604.svg);
const express = require('express'); const {resolve} = require('path'); const chanel = process.env.VUE_APP_BUILD_CHANEL; const appName = `name-installer-${chanel}`; const oneClick = false; const nsisOptions = { oneClick, perMachine: !oneClick, allowToChangeInstallationDirectory: true, preCompressedFileExtensions: [], deleteAppDataOnUninstall: true, displayLanguageSelector: true, installerLanguages: ['en', 'ru'], warningsAsErrors: false, }; let styles = ` @import "~@/styles/base.scss"; @import "~@/styles/transitions.scss"; @import "~@/styles/buttons.scss"; `; module.exports = { css: { loaderOptions: { scss: { additionalData: styles, }, }, }, configureWebpack: { devServer: { onBeforeSetupMiddleware: (devServer) => { if (process.env.NODE_ENV !== 'production') { devServer.app.use( '/extraResources/', express.static( resolve(__dirname, 'src', 'extraResources'), ), ); } }, }, }, pluginOptions: { electronBuilder: { outputDir: `dist_${chanel}`, customFileProtocol: `${appName}://./`, preload: `src/preload.ts`, nodeIntegration: false, builderOptions: { appId: 'com.name.installer', productName: `Name Installer`, protocols: { name: appName, role: 'Viewer', schemes: [appName], }, win: { icon: 'public/icon.ico', target: [ { target: 'portable', arch: ['x64'], }, ], publisherName: 'Name FZ-LLC', }, nsis: nsisOptions, nsisWeb: nsisOptions, }, }, }, }; |
const express = require('express'); const {resolve} = require('path'); const chanel = process.env.VUE_APP_BUILD_CHANEL; const appName = `name-installer-${chanel}`; const oneClick = false; const nsisOptions = { oneClick, perMachine: !oneClick, allowToChangeInstallationDirectory: true, preCompressedFileExtensions: [], deleteAppDataOnUninstall: true, displayLanguageSelector: true, installerLanguages: ['en', 'ru'], warningsAsErrors: false, }; let styles = ` @import "~@/styles/base.scss"; @import "~@/styles/transitions.scss"; @import "~@/styles/buttons.scss"; `; module.exports = { css: { loaderOptions: { scss: { additionalData: styles, }, }, }, configureWebpack: { devServer: { onBeforeSetupMiddleware: (devServer) => { if (process.env.NODE_ENV !== 'production') { devServer.app.use( '/extraResources/', express.static( resolve(__dirname, 'src', 'extraResources'), ), ); } }, }, }, pluginOptions: { electronBuilder: { outputDir: `dist_${chanel}`, customFileProtocol: `${appName}://./`, preload: `src/preload.ts`, nodeIntegration: false, builderOptions: { appId: 'com.name.installer', productName: `Name Installer`, protocols: { name: appName, role: 'Viewer', schemes: [appName], }, win: { icon: 'public/icon.ico', target: [ { target: 'portable', arch: ['x64'], }, ], publisherName: 'Name FZ-LLC', }, nsis: nsisOptions, nsisWeb: nsisOptions, }, }, }, };
Дополнительно:
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Проблема с неправильным путем к ссылкам на SVG файлы в electron-builder может возникать из-за различных причин. Вот несколько возможных решений, которые могут помочь вам исправить эту проблему:
1. Убедитесь, что путь к вашим SVG файлам указан правильно в вашем проекте. Проверьте, что путь указан относительно корневой папки проекта, чтобы electron-builder мог правильно найти файлы при построении приложения.
2. Проверьте, что ваши SVG файлы находятся в правильном месте внутри вашего проекта. Убедитесь, что они не перемещаются или удаляются во время сборки приложения.
3. Попробуйте использовать абсолютный путь к вашим SVG файлам вместо относительного пути. Это может помочь избежать проблем с разрешением путей при сборке проекта.
4. Убедитесь, что вы правильно настроили конфигурацию electron-builder для включения SVG файлов в ваше приложение. Проверьте, что вы правильно указали пути к вашим файлам в файле конфигурации.
Пример кода для использования SVG файлов в electron-builder:
"files": [ { "from": "path/to/your/svg/files", "to": "path/in/app" } ]
Следуя этим рекомендациям, вы сможете исправить проблему с неправильным путем к ссылкам на SVG файлы в electron-builder и успешно собрать ваше приложение.