今回は「Electronにおけるプロセス間通信」についてまとめます。
目次
Electronにおけるプロセス
レンダラープロセス起点
同期通信(sendSync)
非同期通信(send)
非同期通信(invoke)
メインプロセス起点
非同期通信(send)
Electronにおけるプロセス
Electronはブラウザ実装と似ていて「メインプロセス」と「レンダラープロセス」の2つのプロセスが存在しています。
この2つのプロセス間で「IPC (Inter-Process Communication)」という仕 ...
ラベル JavaScript の投稿を表示しています。 すべての投稿を表示
Electron で作る デスクトップアプリケーション
今回は「Electron で作るデスクトップアプリケーション」についてまとめます。
作るものも単純なHTMLを表示するだけの何もできないスケルトンプログラムです。
目次
概要
プロジェクト準備
実装
デバッグ
ビルド
概要
Electronとは
GitHubが開発したオープンソースのデスクトップアプリケーション開発フレームワークです。
このフレームワークを利用すると、JavaScript(Node.js)を使ってクロスプラットフォームなデスクトップアプリケーション開発ができます。
作成される実行ファイルは「Chromium」と「Node.js」で動いており、「画面描画エンジン(レンダー)」と「処理エンジンメインプロセス」の2つが通信しながら動くようなもの ...
Akinari Tsugo
23:26
Electron,
JavaScript,
Node.js
ホームページに地図を表示する方法
今回は「Leaflet.js と Open Street Map を利用して地図を表示する方法」についてまとめます。
目次
概要
実装
実行
概要
最近はホームページ上に地図を表示するサイトも増えています。
今回は、そんな前例にならって自分も地図を表示したい!という方に向けた記事になります。
とはいえ、あらかじめ表示したい場所の緯度経度が分かっている前提になります。
もし、任意の住所から緯度経度を調べたいのであれば「住所から緯度経度を求める方法」をまずは参照してみてください。
今回利用するのは「leaflet.js」と「Open Street Map」です。
「leaflet.js」はオープンソースの地図操作を支援する JavaScript ライブラリです。
「Open S ...
Akinari Tsugo
0:35
JavaScript
JSON Web Token (JWT) の 仕様 と 使い方
今回は「JSON Web Token」についてまとめます。
目次
概要
仕様
構造
ヘッダー
ペイロード
署名
使い方
注意点
概要
JSON Web Token は略して JWT (ジョット) と呼びます。
「セッション情報をサーバーサイドで保存せずクライアントサイドで保持できる(ステートレスが実現できる)」点が特徴です。
WebAPIとか作るときは便利な仕様です。
JWTの仕様(= トークンの仕様)自体はシンプルですし、使い方も簡単です。
ただ…使い方を間違えると脆弱性ができてしまうので、使い方には要注意です。
仕様
...
Akinari Tsugo
0:28
JavaScript,
Web API,
セキュリティ
ECMAScript 2018 (ES9) まとめ
今回は「ECMAScript2018 (ES9)」についてまとめます。
今回の大きな修正は「正規表現」です。
正規表現に新たなフラグや機能が追加されました。
目次
文字列
テンプレートリテラル
正規表現
sフラグ
uフラグ
名前付きキャプチャ
後方参照
式と演算子
残余プロパティ / 分割プロパティ
Promise.prototype.finally()
非同期イテレータ
対応状況
...
Akinari Tsugo
20:40
JavaScript
ECMAScript 2017 (ES8) まとめ
今回は「ECMAScript2017 (ES8)」についてまとめます。
目次
Object
Object.values() / Object.entries()
Object.getOwnPropertyDescriptors()
String
String.prototype.padStart() / String.prototype.padEnd()
Function
引数末尾のカンマ
async / await キーワード
SharedArrayB ...
Akinari Tsugo
23:16
JavaScript
ECMAScript 2016 (ES7) まとめ
今回は「ECMAScript2016 (ES7)」についてまとめます。
ECMAScript 2016 (ES7) ではあまり機能追加されず、以下の2点だけ追加されたようです。
といっても、どちらも利用シーンは多そうな機能なのでぜひ覚えておきたいものです。
目次
Array.prototype.includes()
指数演算子
対応状況
Array.prototype.includes()
今まで配列要素に指定した要素が含まれているかどうかを調べようとすると .indexOf() の戻り値が 0以上 であることを確認していました。
これだとコードで意味が分かりづらいので .includes() で読みやすくしようといった流れです。
構文
arr.includes(searc ...
Akinari Tsugo
0:20
JavaScript
単一フォーム に 複数サブミット を配置して 遷移先 を切り替える 方法
jQuery を使って 単一フォーム内に複数ボタンを配置して押されたボタンに応じて遷移先を変えるようにするサンプルコードを作成しました。
目次
サンプルコード
解説
サンプルコード
HTML と JavaScript は分けて記載します。
confirm.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>確認</title>
</head>
<body>
<h1>確認</h1>
<form id="form" method="POST" action="">
<div>
<span>会社名:</span>
<input type ...
Akinari Tsugo
23:17
HTML,
JavaScript
JavaScript で 二重送信防止 する 方法
jQuery を使って フォームのサブミット および 通常ボタン 、 アンカー の二重送信(多重実行、多重送信)を防止するサンプルコードを作成しました。
目次
サンプルコード
サブミットに対して多重送信防止
ボタンとアンカーに対して多重送信防止
解説
サンプルコード
以下に「サブミットに対する多重送信防止」と「ボタンおよびアンカーに対する多重送信防止」のサンプルを載せますが、違いは対象としているイベント ( submit か click か) だけで基本的なコードは同じです。
サブミット に対して 多重送信防止
(function () {
$("form").on("submit", funct ...
Akinari Tsugo
23:17
HTML,
JavaScript
Node.js + Express で ASP.NET ライクな ルーティング を行う ミドルウェア
Node.js + Express で Webアプリケーション開発 を行うとき困ったのがルーティング。
そこで ASP.NET MVC のような実装ができる Express 向け ミドルウェア "express-junction" を作成しました。
目次
概要
インストール
使い方
ディレクトリ、ファイル
/app.js
/controllers/home.js
/views/home/index.ejs
リンク
GitHub: garafu/express-junction
npm: express-junctio ...
Akinari Tsugo
14:28
ASP.NET,
Express,
JavaScript,
Node.js
ESLint ルール 一覧 (日本語)
ESLint ルール を一通り日本語訳して一覧化してみました。
記載はできるだけ「デフォルトがどのような状態か」という内容で記載しています。
なお、最新情報および詳細情報は ESLint - Rules を参照してください。
目次
エラーになりやすい
ベストプラクティス
strictモード
変数
Node.js と CommonJS
表記法
ECMAScript 6
エラーになりやすい
no-cond-assign
条件処理内で代入を行わないこと
no-console
console の使用をしないこと
no-constant-condition
...
Akinari Tsugo
23:19
JavaScript,
Node.js
Node.js で module を 作成 および 利用 する 方法
開発をしているとよく使う機能や関数、値などはモジュール化して掃き出しておきたいことがあると思います。
Node.js では module を使うことでそうしたことが実現できます。
ここでは、 module の具体的な作成方法と利用方法についてまとめます。
目次
基本的な使い方
サンプルコード
複数メソッドのモジュール化
単一オブジェクトのモジュール化
[補足] module の 読み込み
読み込み順
キャッシュ
基本的な使い方
module の 作成
module は 1ファイル として切り出して作成します。
作成したファイルにおいて module.exports にモジュール化したいオブジェクトや関数を設定することで modu ...
Akinari Tsugo
18:02
JavaScript,
Node.js