16
12

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Electron+React+Typescriptの開発環境を作る

Last updated at Posted at 2019-03-11

Electron+React+Typescriptで何かWebアプリを作ってみたいという人のために、Electronで開発を始めるまでの過程を書いていこうと思います。

※2019/09/25追記
create-react-appがTypescriptをサポートしたことによってこのQiitaの記事は非推奨になったので最新の開発環境を作りたい場合はElectron+React+Typescriptの開発環境を作る・改をみてください。

事前準備

create-react-appをグローバルにインストールする。

npm install -g create-react-app

アプリ起動まで

アプリ作成

今回はTypescriptを使用するために、react-scripts-tsを使用しアプリを作成する。

npx create-react-app --scripts-version=react-scripts-ts [アプリ名]

※Could not create a project called "[アプリ名]" because of npm naming restrictions:

  • name can no longer contain capital letters
    このようなエラーが出た場合はアプリ名が悪いようなので先頭を小文字にするなどしてみるとエラーがなくなるはずです!

Electronの設定

electronforemanをインストールする。

yarn add --dev electron
yarn add foreman

https://github.com/csepulv/electron-with-create-react-app 内の下記ファイルを同じ場所にコピーする

Procfile
src/electron-starter.js
src/electron-wait-react.js

package.jsonを編集する

package.json
{
 .
 .
  "homepage": "./",
  "main": "src/electron-starter.js",
  "scripts": {
    .
    .
    "electron": "node_modules/.bin/electron .",
    "dev" : "nf start -p 3000"
  }
}

tslint.jsonに下記の"rules"を追加する

tslint.json
{
  "extends": ["tslint:recommended", "tslint-react", "tslint-config-prettier"],
  "linterOptions": {
    "exclude": [
      "config/**/*.js",
      "node_modules/**/*.ts",
      "coverage/lcov-report/*.js"
    ]
  },
  "rules": {
    "no-console": false,
    "ordered-imports": false,
    "object-literal-sort-keys": false,
    "member-ordering": true,
    "strict-boolean-expressions": false,
    "jsx-boolean-value": false
  },
  "jsRules": {
    "no-console": false
  }
}

アプリ起動

yarn dev

最後に

今回は環境構築だけでしたが、これを用いてお天気アプリの作成も行いました。それに関してはElectron+React+Typescriptでお天気アプリを作るに書きました。
メモ程度ですが参考にしてください。

参考

React + TypeScript (+ Electron)でアプリを書き始めるときにやってること

16
12
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
12

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?