2016-08-21 7 views
2

私は、アプリケーションウィンドウを最小化し最大化するElectronアプリケーション例を持っています。私はReactアプリケーションで同じことをしたいと思います。しかし、Reactコンポーネントのメインアプリケーションウィンドウへの参照を取得するにはどうすればよいですか?Reactコンポーネントでminimize()とfocus()を呼び出す方法は?

マイmain.jsプログラムが含まれています:電子例では

const electron = require('electron'); 
const {BrowserWindow} = electron; 
... 
function createWindow() { 
    // Create the browser window. 
    mainWindow = new BrowserWindow({ width: 500, height: 300, 
           frame: false, resizable: false }); 
    global.mainWindow = mainWindow; 
    ... 
} 

を、私のアプリ/ index.jsファイルが含まれています。私のリアクト例で

var remote = require('electron').remote; 
... 
remote.getGlobal("mainWindow").minimize(); 

を、私のアプリ/ app.jsしかし

import React from 'react'; 
import ReactDOM from 'react-dom'; 
import AppContainer from './containers/app.container' 

var remote = require('electron').remote; 

を時計を実行しているとき、私は、このエラーメッセージが表示されます。:ファイルが含まれてい

npm run-script watch 

> [email protected] watch /home/myname/nodejs/mydemo 
> watchify app/app.js -t babelify -o public/js/bundle.js --debug --verbose 

Error: Cannot find module 'electron' from '/home/myname/nodejs/mydemo/app' 

私の質問は:

  • は、どのように私が反応成分の中から "リモート" を参照していますか?
  • メインアプリケーションウィンドウを参照する別の方法はありますか?

答えて

1

私はそれを自分で考え出しました。このコードはReactコンポーネントで動作します:

var remote = window.require('electron').remote; 
remote.getGlobal("mainWindow").minimize(); 
関連する問題