Reactで配列やオブジェクトをfor文で回そうとするとESLintにUsing 'ForInStatement' is not allowed.eslint(no-restricted-syntax)と怒られてしまします。 NG例: 配列をfor...inで回す const arr = [1, 2, 3, 4]; for (e in arr) { console.log(e); } // Usi…
今回は、前回Reactで作った簡易掲示板をReduxでリプレイスします。 前回同様、↑のような簡易掲示板をReduxを使って作ります。 それでは、↓の手順にそって実装していきます。 必要なパッケージのインストールaction作成reducer作成store作成component作成 必…
Reactを用いて↓のような簡易掲示板を作ったのでメモ。 コンポーネントに分けず、Stateのみを用いたパターンと、コンポーネントにわけPropsを用いたパターンの2つを実装してみました。 実装 今回は値の追加にformは用いていません。handleInputChangeメソッド…
はじめに 今回は、情報セキュリティの定義や脅威についてまとめます。 情報セキュリティとは 情報セキュリティとは、情報の機密性、完全性、可用性を維持すること、とJIS Q 27002によって規定されています。 機密性 (Confidentiality) 情報へのアクセス許可…
Reactで子コンポーネントに値を渡すコードメモ。 propsは親コンポーネントから子コンポーネントへ値を渡す時に使い、変更不可な値(イミュータブル)。 *対してstateはコンポーネント内の状態であり、変更可(ミュータブル)。 ↓は、AppコンポーネントからUser…
「ハッキング・ラボのつくりかた」という書籍を読み進めているのですが、第4章の権限昇格のところで以下のような大量のwarningに遭遇しました。 msf5 exploit(windows/local/bypassuac_fodhelper) > exploit [] Started HTTPS reverse handler on https://1…
はじめに 今回は、aタグにtarget="_blank"を指定することのリスクと対処法についてまとめます。 こういうやつ↓の危険性ですね。 <a href="hoge.html" target="_blank"></a> target="_blank"の危険性 target="_blank"は、リンク先のページを新しいウィンドウで開く指定をする属性ですが、リンク先とし…
はじめに 今回はJavaScriptのsort()の副作用についてメモしていきます。 sort()の副作用 sort()は元の配列の順番を直接ソートします。破壊的メソッドというやつですね。 const months = ['March', 'Jan', 'Feb', 'Dec']; months.sort(); console.log(months)…
はじめに 今回はReactのstateについてメモ。setState()でstateの値を更新し、同期的に取得する方法を書いていきます。 結論 ↓のようにすると、同期的にstateの値を更新/取得することができます。 import React, { Component } from 'react'; class App exten…
はじめに ReactでpropTypesを書いている時にstatic propTypes とReact.PropTypes は何が違うのか気になったので、調べたことをメモします。 ↓の何が違うのか、ということです。 // static propTypes class App extends React.Component { static propTypes =…
はじめに 関数型プログラミングをJavaScriptで勉強中です。今回はreduce()の使い方についてメモします。 関数型プログラミングを学んでいるときに↓のようなコードを見かけました。この関数はどちらも、渡された配列要素の合計を返す関数です。 //reducerを使…
JSXで出てくる波括弧の意味について調べたのでメモします。 JSX内で出てくる波括弧{}は、JavaScriptの値を取得したいときに使います。 なので例えば、 <Button> title="なみかっこ" color="blue" style={{ display: 'none' }} </Button> のstyleの値部分は、 内側の{}はオブジ…
はじめに MacでツールをインストールしてPATHを通した後、Macを再起動するとPATHを通したはずのコマンドが使えなくなってました。その解決法メモ。 $ zsh: command not found: node 結論 早速結論ですが、指定しているログインシェルの設定ファイルに設定を…
はじめに 次にようなコードを書いていてエラーが起きたので、今回は関数の巻き上げについてメモ。 func(); //=> Hello function funcExpression(); //=> Uncaught ReferenceError: Cannot access 'funcExpression' before initialization function func () {…
はじめに Reactを学ぶためのモダンなJavaScriptについてまとめます。今回は論理演算子とショートサーキット評価(短絡評価)について書いていきます。 論理演算子 論理演算は3つ種類があります。 論理積(AND) / 論理和( || ) / 否定(NOT)の3つです。それらを表…
はじめに Reactを学ぶためのモダンなJavaScriptについてまとめます。 今回はECMAScript2015(ES6)から導入された、分割代入やスプレッド記法などの配列/オブジェクトに関する便利な書き方についてまとめます。 まずは分割代入から。 分割代入 分割代入とは、…
はじめに Reactを学ぶためのモダンなJavaScriptについてまとめます。 今回はECMAScript2015(ES6)から導入されたクラスについて書いていきます。基本的に他言語におけるクラスと同じですが、クラスの作成方法やプロパティの定義の仕方が独自ですのでまとめて…
はじめに Reactを学ぶためのモダンなJavaScriptについてまとめます。 今回はECMAScript2015(ES6)で導入されたアロー関数とそのthisの挙動についてまとめます。 アロー関数って? アロー関数は、ES6から導入された通常の関数(function)を代替する構文です。 /…
はじめに Reactを学ぶためのモダンなJavaScriptについてまとめます。 この記事では、ECMScript2015(ES6)から導入された新たなスコープについて、そして変数宣言(var/let/const)についてまとめていきます。 スコープ スコープとは、変数の有効範囲を定義した…
Reactを書籍やチュートリアルで勉強していると、見慣れないJavaScriptの記法をちらほら見かけました。調べてみると、それらはES6以降に導入されたものでした。この記事では、Reactで用いられるES6以降の仕様についてまとめていきます。 React開発で使われる…
はじめに gRPCについてちょっと調べたのでメモる。 gRPCさくっと概要 gRPCとは、RPC(Remote Procedure Call)を実現するためにGoogleにより開発されたプロトコル。そもそもRPCってなんでしょう? RPCとは RPC( = リモートプロシージャコール)とは、プログラム…
chromeでページ全体をスクショする方法メモ。 デベロッパーツールを開く( command + option + i )command + shift + p ( 検索窓が開く )fullと入力しEnter ( Screenshot Caputure full size screenshot を選択 ) こうするとページ全体の画像が撮れます。
AWSでNATを構成するには、以下の2通りの方法がある。 NATインスタンスNATゲートウェイ 1. NATインスタンス NATソフトウェアがプリインストールされたAMI ( Amazon Machine Image )から起動したEC2インスタンスを用いる方法。 EC2インスタンスなので、停止が…
はじめに 今回は、NATについて学んでのでメモりたいと思います。 NATって? Network Address Translationの略で、プライベートIPをパブリックIPに、またその逆を行う仕組みのことです。 これを用いると、例えばプライベートなネットワークに置かれたホスト(…
自分メモ macが外付けディスプレイを認識してくれない時の対処法 ケーブルをつけたままmacをスリープ状態にしばらく放置(3分くらい)スリープ解除 以上でディスプレイを認識してくれる。
はじめに PHPでWebアプリを開発していて、CSSがキャッシュされてしまい変更の確認のたびにキャッシュクリアするのはいかがなものか、、と思い調べるといい方法があったのでメモ。 問題 cssがブラウザにキャッシュされてしまい、cssの変更が確認しにくい。。 …
はじめに 最近PHPを勉強していて、db接続周りで小ハマりしたのでその原因と解決をメモ。 現象 PHPでMySQLに接続したく、PDOを用いて↓のようなコードを書いた。データベースhogeにユーザhostman, パスワードpasswordで接続したい。 $dsn = "mysql:dbname=hoge…
はじめに 最近、業務で数十万行とあるapacheログを集計する作業をしまして、awkを使ったのでやったことメモします。今回は、awkを使ってリクエストされた特定の時間帯のみに絞るということをやってみます。 やること 2019/1/21の22:00 ~ 23:00のログだけを出…
はじめに 踏み台サーバを経由して目的のサーバにsshする際に、これまで↓のような手順を取ってました。 ローカルから踏み台サーバにssh踏み台サーバから目的のサーバにssh これめんどくさくてダイレクトに目的のサーバにsshできんものか?と思って調べたらあ…
ターミナルであるディレクトリにいる時、そのディレクトリをFinderで開く必要があったので、そのやり方メモ $ cd 目的のディレクトリ $ open . これで開きたいディレクトリをFinderで開ます。