electron, reactでツールを作ってみた時に役に立ったリンクまとめ

# Electron

## memory leak
- [node.js - possible EventEmitter memory leak detected - Stack Overflow](https://stackoverflow.com/questions/9768444/possible-eventemitter-memory-leak-detected)

## chrome extension
- [MarshallOfSound/electron-devtools-installer: An easy way to ensure Chrome DevTools extensions into Electron](https://github.com/MarshallOfSound/electron-devtools-installer)

## module
- [app.getAppPath() problem · Issue #7094 · electron/electron](https://github.com/electron/electron/issues/7094#issuecomment-245023616)

# node

## file system
- [path: tilde expansion · Issue #684 · nodejs/node](https://github.com/nodejs/node/issues/684#issuecomment-302413878)
- [Node.jsでファイルやフォルダが存在するかチェックする | 情報アイランド](http://info-i.net/fs-access)
- [Node.js で ファイル / ディレクトリ の 存在を確認する 方法 - galife](https://garafu.blogspot.com/2017/06/nodejs-exists-directory.html)
- [node.jsでファイルの入出力操作 - Qiita](https://qiita.com/shirokuman/items/509b159bf4b8dd1c41ef)
- [javascript - How to save an image drawn on the canvas in Electron.js - Stack Overflow](https://stackoverflow.com/questions/52692258/how-to-save-an-image-drawn-on-the-canvas-in-electron-js)

## mysql
- [node.js - nodejs mysql Error: Connection lost The server closed the connection - Stack Overflow](https://stackoverflow.com/questions/20210522/nodejs-mysql-error-connection-lost-the-server-closed-the-connection)
- [【初心者向け】SQLインジェクションの概要と対策方法 | カゴヤのサーバー研究室](https://www.kagoya.jp/howto/network/sql-injection/)
- [node-mysqlで接続が切れる点を改善 - a2 Tech blog](http://ninna2.hatenablog.com/entry/2017/02/22/node-mysql%E3%81%A7%E6%8E%A5%E7%B6%9A%E3%81%8C%E5%88%87%E3%82%8C%E3%82%8B%E7%82%B9%E3%82%92%E6%94%B9%E5%96%84)
- [mysqljs/mysql: A pure node.js JavaScript Client implementing the MySQL protocol.](https://github.com/mysqljs/mysql#error-handling)
- [node-mysql2/documentation at master · sidorares/node-mysql2](https://github.com/sidorares/node-mysql2/tree/master/documentation)
- [NodeJS / Express: Using SSH to access MySQL remotely](https://medium.com/@devontem/nodejs-express-using-ssh-to-access-mysql-remotely-60372832dd08)
- [Error: Can't add new command when connection is in closed state · Issue #939 · sidorares/node-mysql2](https://github.com/sidorares/node-mysql2/issues/939)


## ssh
- [mscdex/ssh2: SSH2 client and server modules written in pure JavaScript for node.js](https://github.com/mscdex/ssh2)
- [SSH port forwarding - Example, command, server config](https://www.ssh.com/ssh/tunneling/example)

# React

## library
- [Introduction - Semantic UI React](https://react.semantic-ui.com/)
- [reactjs - Semantic-UI-react fixed sidebar - Stack Overflow](https://stackoverflow.com/questions/46059637/semantic-ui-react-fixed-sidebar/50770777#50770777?newreg=2fda6cc99aa944b79ecb4fe4506a4c11)

## component design
- [reactjs - react Hooks useState Array - Stack Overflow](https://stackoverflow.com/questions/53824116/react-hooks-usestate-array)

## state
- [React｜Hooks(useState, useEffect)の動作確認 - わくわくBank](https://www.wakuwakubank.com/posts/702-react-hooks/)
- [javascript React changing an uncontrolled input - Stack Overflow](https://stackoverflow.com/questions/37427508/react-changing-an-uncontrolled-input)
- [reactjs - Cannot invoke an object which is possibly 'undefined'.ts(2722) - Stack Overflow](https://stackoverflow.com/questions/56913963/cannot-invoke-an-object-which-is-possibly-undefined-ts2722)

## folder structure
- [Optimal file structure for React applications - Charles Stover - Medium](https://medium.com/@Charles_Stover/optimal-file-structure-for-react-applications-f3e35ad0a145)
- [reactjs - Cannot invoke an object which is possibly 'undefined'.ts(2722) - Stack Overflow](https://stackoverflow.com/questions/56913963/cannot-invoke-an-object-which-is-possibly-undefined-ts2722)

## event bind
- [reactjs - How to get data from table row click using Semantic's React Table Component - Stack Overflow](https://stackoverflow.com/questions/46223937/how-to-get-data-from-table-row-click-using-semantics-react-table-component)

## other
- [A Dark Mode Toggle with React and ThemeProvider | CSS-Tricks](https://css-tricks.com/a-dark-mode-toggle-with-react-and-themeprovider/)
- [javascript - Take screenshot of React app and generate it as PDF - Stack Overflow](https://stackoverflow.com/questions/43389572/take-screenshot-of-react-app-and-generate-it-as-pdf/50949059)
- [javascript - ReactJS - Destroy old Component-Instance and create new - Stack Overflow](https://stackoverflow.com/questions/52260258/reactjs-destroy-old-component-instance-and-create-new)
- [React で publicフォルダ内の静的ファイル(画像)を参照する方法 │ Web備忘録](https://webbibouroku.com/Blog/Article/react-public-folder)

# TypeScript

## type
- [【TypeScript】 Object[key] （ブラケット記法）で関数呼び出ししたら Element implicitly has an 'any' type でハマった話 - Qiita](https://qiita.com/Nossa/items/e01d0bce67b760c0bcb9)
- [typescript - Merge Two Interfaces - Stack Overflow](https://stackoverflow.com/questions/49723173/merge-two-interfaces)
- [typescript - How do I decide whether @types/* goes into `dependencies` or `devDependencies`? - Stack Overflow](https://stackoverflow.com/questions/45176661/how-do-i-decide-whether-types-goes-into-dependencies-or-devdependencies)
- [Consider moving react-scripts to devDependencies in the generated package · Issue #4342 · facebook/create-react-app](https://github.com/facebook/create-react-app/issues/4342)

# JavaScript

## basic
- [javascript - Is object empty? - Stack Overflow](https://stackoverflow.com/questions/4994201/is-object-empty)

## Error Handling
- [例外処理 · JavaScript Primer #jsprimer](https://jsprimer.net/basic/error-try-catch/)
- [例外処理 — 仕事ですぐに使えるTypeScript ドキュメント](https://future-architect.github.io/typescript-guide/exception.html)
- [Error - JavaScript | MDN](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Error)
- [Error.prototype.stack - JavaScript | MDN](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Error/stack)
- [How to get JavaScript caller function line number? How to get JavaScript caller source URL? - Stack Overflow](https://stackoverflow.com/questions/1340872/how-to-get-javascript-caller-function-line-number-how-to-get-javascript-caller)

# CSS
## 高さ指定

- [html - CSS - Expand float child DIV height to parent's height - Stack Overflow](https://stackoverflow.com/questions/4804581/css-expand-float-child-div-height-to-parents-height#answer-4805371)

## 文字サイズ

- [CSS3のremとemの違いについて - Qiita](https://qiita.com/masarufuruya/items/bb40d7e39f56e6c25f0d)

## 文字列オーバー表示
- [【CSS】 テキストを折り返す方法！自動で改行・レスポンシブにも対応 | creive【クリーブ】](https://creive.me/archives/17653/)
- [CSSだけで幅を超えた文字列を...で省略する - Qiita](https://qiita.com/ichikawa_0829/items/e0c364e74b5e22a7bc0d)

## 背景色
- [CSSを上書きして背景色を指定無しにする方法 | フリーエンジニアライフ](https://dev-lib.com/css-color-transparent/)

# other

## slack
- [Creating rich message layouts | Slack](https://api.slack.com/messaging/composing/layouts#attachments)
- [slackのIncoming webhookが新しくなっていたのでまとめてみた - Qiita](https://qiita.com/kshibata101/items/0e13c420080a993c5d16)
- [Reference: Message payloads | Slack](https://api.slack.com/reference/messaging/payload)
- [Formatting text for app surfaces | Slack](https://api.slack.com/reference/surfaces/formatting)
- [Reference: Layout blocks | Slack](https://api.slack.com/reference/block-kit/blocks)
- [プログラムからSlackに画像投稿する方法まとめ - Qiita](https://qiita.com/stkdev/items/992921572eefc7de4ad8)
- [プログラムからSlackに画像投稿する方法まとめ - Qiita](https://qiita.com/stkdev/items/992921572eefc7de4ad8)
- [files.upload method | Slack](https://api.slack.com/methods/files.upload)

## vscode
- [VSCodeを手軽にリロードする為のショートカット - Qiita](https://qiita.com/Naturalclar/items/ae9e84fa8cf16a14c7e9)
  
- [Electron && React のconsole error対応メモ - Qiita](https://qiita.com/taroujirou/items/80e8e77d62cbe39d0b34)