导入电子时,fs.existsSync不起作用

时间:2019-09-23 09:08:17

标签: javascript node.js vue.js electron

我当前正在使用Vue和Electron,并想使用

重新启动应用程序
packages/common/src/component.js

但是当我导入电子时,我得到import React from "react"; import { View } from "react-native-web"; import MapView from "react-native-maps"; const Component = ({ coordinates }) => ( <View> <MapView region={{ latitude: coordinates.latitude, longitude: coordinates.longitude }}> <MapView.Marker coordinate={{ latitude: coordinates.latitude, longitude: coordinates.longitude }} /> </MapView> </View> );

我也尝试使用

import { app } from 'electron';

export default {
  name: 'Home',
  methods: {
   restartApp() {
      app.relaunch()
      app.exit()
   }
  }
}

还有

fs.existsSync is not a function

还给我const remote = require('electron'); import { app } from remote;

1 个答案:

答案 0 :(得分:1)

在创建主BrowserWindow时,可以在webPreferences中使用preload参数。 在main.js中,

  mainWindow = new BrowserWindow({
    webPreferences: {
      nodeIntegration: false,
      preload: path.join(__dirname, 'preload.js')
    }
  })

在preload.js

    const remote = require("electron").remote;
    window.appQuit = function() {
      remote.app.exit(0);
    };