簡體   English   中英

為什么Electron正在建立反應應用程序以前的更改而不是最新的更改?

[英]Why Electron is building react app with previous changes instead of latest ones?

我創建了react應用程序並使用electron-builder它,它工作正常然后我更改了我的代碼以添加新功能並使用相同的方法重建它,但這次我得到了以前的構建。

請查找我的electron.js和Package.json文件,如果有更多要求,請告訴我。

electron.js

    const electron = require('electron');
    const app = electron.app;
    const BrowserWindow = electron.BrowserWindow;

    const path = require('path');
    const url = require('url');
    let mainWindow;

    function createWindow() {
      mainWindow = new BrowserWindow();
      mainWindow.maximize();
      //mainWindow.loadURL(isDev ? 'http://localhost:3000' : `file://${path.join(__dirname, '../build/index.html')}`);
      mainWindow.loadURL(url.format({
        pathname: path.join(__dirname, '../build/index.html'),
        protocol: 'file:',
        slashes: true
      }));
      mainWindow.openDevTools();
      mainWindow.on('closed', () => mainWindow = null);
    }

    app.on('ready', createWindow);

    app.on('window-all-closed', () => {
      if (process.platform !== 'darwin') {
        app.quit();
      }
    });

    app.on('activate', () => {
      if (mainWindow === null) {
        createWindow();
      }
    });

的package.json

        {
      "name": "utility-core",
      "description": "Load bulk data to Fluent",
      "version": "0.0.2",
      "license": "ISC",
      "productName": "Fluent Bulk Import Utility",
      "author": {
        "name": "Zain Ul Abideen",
        "email": "zain.ulabideen@faircg.com"
      },
      "private": true,
      "main": "public/electron.js",
      "homepage": "./",
      "dependencies": {
        "autoprefixer": "7.1.6",
        "axios": "^0.18.0",
        "babel-core": "6.26.0",
        "babel-eslint": "7.2.3",
        "babel-jest": "20.0.3",
        "babel-loader": "7.1.2",
        "babel-preset-react-app": "^3.1.1",
        "babel-runtime": "6.26.0",
        "bootstrap": "^4.1.3",
        "case-sensitive-paths-webpack-plugin": "2.1.1",
        "chalk": "1.1.3",
        "concurrently": "^4.1.1",
        "css-loader": "0.28.7",
        "dotenv": "4.0.0",
        "dotenv-expand": "4.2.0",
        "electron-is-dev": "^1.1.0",
        "eslint": "4.10.0",
        "eslint-config-react-app": "^2.1.0",
        "eslint-loader": "1.9.0",
        "eslint-plugin-flowtype": "2.39.1",
        "eslint-plugin-import": "2.8.0",
        "eslint-plugin-jsx-a11y": "5.1.1",
        "eslint-plugin-react": "7.4.0",
        "extract-text-webpack-plugin": "3.0.2",
        "file-loader": "1.1.5",
        "fs-extra": "3.0.1",
        "html-webpack-plugin": "2.29.0",
        "jest": "20.0.4",
        "jquery": "^3.4.1",
        "mdbreact": "^4.15.0",
        "object-assign": "4.1.1",
        "papaparse": "^4.6.0",
        "postcss-flexbugs-fixes": "3.2.0",
        "postcss-loader": "2.0.8",
        "promise": "8.0.1",
        "raf": "3.4.0",
        "react": "^16.4.1",
        "react-collapsible": "^2.6.0",
        "react-dev-utils": "^5.0.1",
        "react-dom": "^16.4.1",
        "react-file-reader": "^1.1.4",
        "react-router-dom": "^4.2.0",
        "react-spinners": "^0.4.6",
        "react-transition-group": "^2.2.1",
        "resolve": "1.6.0",
        "style-loader": "0.19.0",
        "sw-precache-webpack-plugin": "0.11.4",
        "universal-cookie": "^3.0.4",
        "url-loader": "0.6.2",
        "wait-on": "^3.2.0",
        "webpack": "3.8.1",
        "webpack-dev-server": "2.9.4",
        "webpack-manifest-plugin": "1.3.2",
        "whatwg-fetch": "2.0.3"
      },
      "scripts": {
        "start": "node scripts/start.js",
        "build": "node scripts/build.js",
        "test": "node scripts/test.js --env=jsdom",
        "pack": "electron-builder --dir",
        "dist": "electron-builder"
      },
      "devDependencies": {
        "csv-loader": "^3.0.2",
        "electron": "^1.8.8",
        "electron-builder": "^20.44.4",
        "electron-packager": "^8.7.2"
      },
      "jest": {
        "collectCoverageFrom": [
          "src/**/*.{js,jsx,mjs}"
        ],
        "setupFiles": [
          "<rootDir>/config/polyfills.js"
        ],
        "testMatch": [
          "<rootDir>/src/**/__tests__/**/*.{js,jsx,mjs}",
          "<rootDir>/src/**/?(*.)(spec|test).{js,jsx,mjs}"
        ],
        "testEnvironment": "node",
        "testURL": "http://localhost",
        "transform": {
          "^.+\\.(js|jsx|mjs)$": "<rootDir>/node_modules/babel-jest",
          "^.+\\.css$": "<rootDir>/config/jest/cssTransform.js",
          "^(?!.*\\.(js|jsx|mjs|css|json)$)": "<rootDir>/config/jest/fileTransform.js"
        },
        "transformIgnorePatterns": [
          "[/\\\\]node_modules[/\\\\].+\\.(js|jsx|mjs)$"
        ],
        "moduleNameMapper": {
          "^react-native$": "react-native-web"
        },
        "moduleFileExtensions": [
          "web.js",
          "js",
          "json",
          "web.jsx",
          "jsx",
          "node",
          "mjs"
        ]
      },
      "babel": {
        "presets": [
          "env",
          "react-app"
        ],
        "plugins": []
      },
      "eslintConfig": {
        "extends": "react-app"
      },
      "build": {
        "extends": null,
        "appId": "com.example.utility-core",
        "files": [
          "build/**/*",
          "node_modules/**/*",
          "public/electron.js"
        ],
        "directories": {
          "buildResources": "build"
        }
      }
    }

我也嘗試了"electron-dev": "concurrently \\" npm start\\" \\"wait-on http://localhost:3000 && electron .\\""但加載后,在瀏覽器上獲取最新版本但在桌面上獲得previuos版本。 在此先感謝您的幫助

因為你打包舊的react代碼。 在使用電子構建器打包應用程序之前,您需要構建您的react應用程序。 所以你需要更改pack腳本來構建react

"pack": "npm run build && electron-builder --dir",

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM