いつブロスマートフォン用の表示で見るいつブロいつまで続くか分からないブログ(仮)主に趣味やプログラミングに関するメモを書いています。この広告は、90日以上更新していないブログに表示しています。Qiitaの3日目です。私はめちゃくちゃハマったのでここに記録しておきたいと思います。何にハマったかというと、console.logを使ったログ出力です。実際にやってみると確かに表示されたのでデバッグで簡単にログを出したいときはそうやっていました。ところが、コンソールウィンドウに表示されないときがありました。1.4.8ソースは以下のような構成でした。webview.jsプロジェクトの作り方も一応説明しておきます。nodebrewを使ってNode.jsをインストールして、Node.jsのパッケージマネージャをpackage.jsonを作ります。-ypackage.jsonはこんな感じで作られます。"ISC"}次はElectronをインストールします。--save-devとするとpackage.jsonに追記してくれます。--save-dev続いてpackage.jsonを修正します。index.js",」を追加します。}}こんな感じでプロジェクトを作っていきました。続いてindex.jsを作成します。package.jsonのmainに書いたこのjsがメインプロセスといいます。メインプロセスから作成するBrowserWindow(10行目)がレンダラプロセスです。ややこしいかも知れません。デバッグログconsole.log("index.js");上の11行目でindex.htmlを指定しているので、index.htmlを作ります。index.htmlでは15行目にwebviewタグを使っていて、srcに指定したgoogle.comを画面いっぱいに表示します。16行目のscriptタグでbrowsewindow.jsも読み込みます。src="browsewindow.js"></script></body></html>webview.jsはデバッグログを出力するだけです。strict";console.log("webview.js");browsewindow.jsは画面のボタンに対する処理を書きます。webview.openDevTools();}WebStorm上ではこんな感じになります。実行するとこのようなウィンドウが表示されます。このときのデバッグログの表示を確認してみましょう。index.jsとbrowserwindow.jsの文字が表示されている事が分かります。メインプロセスとレンダラプロセスではログの出力が異なるようです。レンダラプロセス内のwebviewタグで指定したwebview.jsのログが表示されていません。ここでかなりハマりました。メインプロセスではconsole.logが出力されて、レンダラプロセスでは出力されないものだと思い込んでしまいました。console.logが表示された方がメインプロセスだと勘違いしていたから余計に分からなくなってしまいました。webview.jsのログを探してみましょう。(アイ)を押すとデベロッパーツールが表示されます。ここで出力されているログはなんと「browserwindow.js」でした。Tool」ボタンを押してみましょう。このボタンはindex.htmlのwebviewに対してデベロッパーツールを表示するようにjsを書いています。思わぬ落とし穴に嵌りそうです。まとめこんな感じでしょうか。レンダラプロセスでのconsole.logも全部WebStormに出てくれたら良かったんですがね。未解決の問題ついでに現時点でよく分かっていない問題があるので、誰か教えてくれるかも知れないという期待を込めて書いておきます。それはデバッグ実行時にブレークポイントで止まってくれるのがメインプロセスのみという問題です。WebStormだからなのか、WebStormでもちゃんと設定すれば止まってくれるのか分かっていないのです。ブレークポイントで止まってくれていればconsole.logなんて出さなくても良い筈なんです。念のため設定情報を貼っておきますね。file:のところに指定してもしなくてもブレークポイントで止まるのはメインプロセスだけでした。»プロフィール事業会社で情シスやってます。AWSとかkintone使ってます。言語は専らPythonです。IoTに取り組んでいます。#jawsug月別アーカイブはてなブログをはじめよう!koichi0814さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。