2017-12-01 6 views
0

私の電子アプリケーションでは、webviewを設定しています。これはindex.htmlをからの抜粋です:私はBrowserWindowためnodeIntegration:falseを設定しているmain.jsでwebview:requireは定義されていません

<webview 
    class="hide" 
    preload="./preload.js" 
    nodeintegration 
    ></webview> 

    <script> 
    require('./renderer.js'); 
    </script> 

が、私はWebViewののコンソールにこのエラーが出るようアプリは、起動しない:

Uncaught ReferenceError: require is not defined 

main.jsからnodeIntegration:falseを削除すると動作しますが、ノードAPIを公開したくありません。

(P.S:WebViewのが指し示すリモートWebアプリがたぶん。競合をjQueryのを使用している?)

答えて

1

requireが設定されませんようにあなたはnodeIntegration : falseコマンドを削除した場合。あなたは2つの可能性を持っているよう

に思える:

  • nodeIntegration: falseを聞かせて、それに対処

  • ブラウザにあったかのように、あなたのjsファイルを呼び出す:<script src="pathToFile"></script>

https://electronjs.org/docs/faq#i-can-not-use-jqueryrequirejsmeteorangularjs-in-electronここで彼らは実際に何を説明しますnodeIntegration

+0

あなたのオプション#1について:私はそれを扱う方法はわかりません.WebアプリケーションでノードAPIを公開するためです。オプション#2の場合、それはメッセージが生成されるので動作しません。 "requireは定義されていません"、renderer.jsで –

+0

を使用すると、browserify: http://browserify.org/ jsのフロントファイルで 'require 'を使う – mJehanno

関連する問題