【React】React Hook Form でフォームの管理をする
React Hook Form を使う準備
npm でインストールします。
基本的なサンプル
フォームの定義
useFormでReact Hook Form を初期化する
Submit時の処理
エラー発生時の処理
Submit時に呼び出す処理
register関数で入力要素にハンドラーなどを登録する
エラー処理
nvmを使用してnode.jsのバージョンを切り替える
nvmとは
nvmの導入(windowsの場合)
以下からインストーラーnvm-setup.exeをダウンロードしてインストールする。
nvmの導入(Macの場合)
homebrew
homebrew が入っていない場合は導入する。公式ページの「インストール」の下に記載されているコマンドをコピーし、ターミナルで実行する。
※必ず公式サイトで最新のコマンドを確認して実行すること
途中、Macのアカウントのユーザーアカウントのパスワードを聞かれるので入力する。
インストールが終わった後、
の下に表示されるコマンドをコピペして実行、パスを通す。
コマンド brew を実行し、インストールが成功しているかどうか確認する。
パスがうまく通っていない場合は以下のような表示が出る。
nvm
以下コマンドをターミナルで実行し、インストールする
アンインストールする場合は以下のコマンドを実行する
パスが通っていない場合、以下コマンドを実行してパスを通す
Zsh(デフォルトのシェル)を使っている場合:
echo '[ -s "/opt/homebrew/opt/nvm/nvm.sh" ] && \. "/opt/homebrew/opt/nvm/nvm.sh"' >> ~/.zshrc
echo '[ -s "/opt/homebrew/opt/nvm/etc/bash_completion" ] && \. "/opt/homebrew/opt/nvm/etc/bash_completion"' >> ~/.zshrc
Bashを使っている場合:
echo '[ -s "/opt/homebrew/opt/nvm/nvm.sh" ] && \. "/opt/homebrew/opt/nvm/nvm.sh"' >> ~/.bashrc
echo '[ -s "/opt/homebrew/opt/nvm/etc/bash_completion" ] && \. "/opt/homebrew/opt/nvm/etc/bash_completion"' >> ~/.bashrc
設定の反映
パスが通っているかどうかの確認
nvm-windowsを使用している場合の切替
|--------------|--------------|--------------|--------------|
| 23.7.0 | 22.13.1 | 0.12.18 | 0.11.16 |
| 23.6.1 | 22.13.0 | 0.12.17 | 0.11.15 |
| 23.6.0 | 22.12.0 | 0.12.16 | 0.11.14 |
| 23.5.0 | 22.11.0 | 0.12.15 | 0.11.13 |
| 23.4.0 | 20.18.2 | 0.12.14 | 0.11.12 |
| 23.3.0 | 20.18.1 | 0.12.13 | 0.11.11 |
| 23.2.0 | 20.18.0 | 0.12.12 | 0.11.10 |
| 23.1.0 | 20.17.0 | 0.12.11 | 0.11.9 |
| 23.0.0 | 20.16.0 | 0.12.10 | 0.11.8 |
| 22.10.0 | 20.15.1 | 0.12.9 | 0.11.7 |
| 22.9.0 | 20.15.0 | 0.12.8 | 0.11.6 |
| 22.8.0 | 20.14.0 | 0.12.7 | 0.11.5 |
| 22.7.0 | 20.13.1 | 0.12.6 | 0.11.4 |
| 22.6.0 | 20.13.0 | 0.12.5 | 0.11.3 |
| 22.5.1 | 20.12.2 | 0.12.4 | 0.11.2 |
| 22.5.0 | 20.12.1 | 0.12.3 | 0.11.1 |
| 22.4.1 | 20.12.0 | 0.12.2 | 0.11.0 |
| 22.4.0 | 20.11.1 | 0.12.1 | 0.9.12 |
| 22.3.0 | 20.11.0 | 0.12.0 | 0.9.11 |
| 22.2.0 | 20.10.0 | 0.10.48 | 0.9.10 |
16.1.0
* 10.24.0 (Currently using 64-bit executable)
お仕事で使う最低限のgit操作
gitそのものの解説ではなく、あくまで普段よく使用する操作のメモ。
※ちょっとずつ加筆予定
githubのリポジトリをクローンする
githubのプロジェクトのページを開き、右上の緑色のボタン <>Code をクリックする。
開いた窓の https の下にあるURLをコピー
クローンしたいディレクトリで以下コマンドを打つ
リポジトリから最新を取得する
ブランチを作る
ブランチを切り替える
mainブランチから今のブランチに最新を取り込む
mainブランチに切り替える
リポジトリに編集した内容を反映する
Laravel 5.1 の Hello World 【View編 の準備】
さて、前回 Controller を使った Hello World をやりましたが、今回は View を使って Hello World をやりましょう。これでMVCのVとCが登場する訳です。ViewにはLaravel標準のbladeというテンプレートを使用してやってみます。
【準備】
blade上でformを使用するときformヘルパーというものを使うのですが、Laravel5からはモジュールを追加しないとformヘルパーが使えません。Laravel4では特になんの設定もなく使えていたみたいなので、5に移行するときのちょっとしたハマりポイントになっているみたいです。
まずはLaravelインストールフォルダ直下にある composer.php の require に "illuminate/html": "~5.0" を追記します。
配列形式なのでカンマを忘れずに。次にコマンドプロンプトで composer update をしてモジュールの追加をします。カレントディレクトリはLaravelインストールディレクトリです。
> composer update
モジュールの追加が終わったら config/app.php を編集します。
Laravel 5.1 の場合、
'providers'に
'aliases' に
'Html' => Illuminate\Html\HtmlFacade::class,
を追記します。
Laravel 5.0 の場合は、
'providers'に
'aliases' に
'Html' => 'Illuminate\Html\HtmlFacade',
を追記します。
5.1 と 5.0 で微妙に書式が違います。5.1 ではファサードでclassを指定するようになりました。
ちなみに composer update を行う前に config/app.php 編集してしまうとエラーになります。
Class 'Illuminate\Html\HtmlServiceProvider' not found
というエラーがでたら config/app.php の 'providers' の記述を削除(コメントアウトでよい)して、composer update をしてください。
大したことまだ書いていないけど、今日はここまでにします。
Laravel 5.1 の Hello World
Laravel 5.1 とタイトルにうたってますが、別にバージョン5.1固有の話題ってわけでもないかも…
前回Laravelのインストールについて記事を書いたので、今回は Hello World です。まあ、前回にも動作確認で簡単な Hello World はやっているんですがね。routes.php に
return 'Hello!';
});
ってやつですね。URLに aaa と指定すると、function(){} 内に記述した処理が動きます。ここでは 'Hello!' という文字列をレスポンスに渡しているので、ブラウザに Hello! と表示されます。
この例だけ見るとすべてのページの処理と出力をこの routes.php に書いていくのがLaravelのやり方なんかい?と勘違いしてしまいますが、あくまでこういう書き方もできるというだけで、もちろんコントローラーやビューを使用する方法も用意されております。
という訳で、今回はコントローラークラスを作成してHello World をやってみたいと思います。app_laravel/app/Http/Controllers 以下(app_laravelはLaravelのインストールディレクトリなので環境により異なります)に HelloController.php を作成し、以下のように記述します。
class HelloController extends Controller
{
public function index()
{
return "hello!!!!";
}
}
routes.php に、以下を追記します。
これで、URLに hello を指定すると HelloController クラスの index() メソッドを呼ぶという動きになります。ブラウザで
http://localhost/app_laravel/hello
にアクセスすると、画面に hello!!!! と表示されます。
Laravel 5.1 のプロジェクト作成(インストール) その2
Laravelのイベントに参加するために茅場町のCOEDOに来ています。ただいまCOEDOから記事を投稿しております。
今回はhtdocs以外にLaravelをインストールしてみたいと思います。
【下準備】
Composerがインストール済とします。 Composerは下記URLからダウンロードできます。
https://getcomposer.org/download/
【Laravelのプロジェクト作成】
前回と同じですがインストール先はhtdocs以外の任意のフォルダです。
今回はEclipse(Aptana)のプロジェクトにしたいのでワークスペースフォルダ
(ここでは C:\pleiades\workspace)に作成します。
>composer create-project laravel/laravel app_laravel --prefer-dist
インストールできたらバージョンの確認(一応)
>php artisan --version
【エイリアスの設定】
ここから前回とちょっと違うところです。htdocs以下ではないので、このままでは当然ブラウザからアクセスできません。なのでApacheの設定ファイルhttpd.confを編集します。ちなみにデフォルト設定でxamppをインストールした場合、C:\xampp\apache\confにあります。
余談ですが、こういう設定ファイルの編集は間違えると環境が壊れてしまうので、編集前のファイルを別名(httpd.conf_bkとかhttpd.conf_20150718とか)でコピーしバックアップしておくことをお勧めします。
<Directory "C:/pleiades/workspace/app_laravel/public/">
Options All
AllowOverride all
Require all granted
</Directory>
記述する場所は <IfModule alias_module> ~ </IfModule> の間がいいでしょう。
この設定内容では /app_laravel/ にブラウザでアクセスしたら C:/pleiades/workspace/app_laravel/public/ を表示するよ!という意味になります。
設定が終わったらApacheを再起動し、ブラウザで
にアクセスします。うまくいっていれば画面に Laravel5 と表示されます。
【Hello World がうまくいかない?】
前回と同じくapp_laravel/app/Http にある routes.php をテキストエディタで開き、
return 'Hello!';
});
と記述。ブラウザで以下URLへアクセスします。
http://localhost/app_laravel/aaa
しかし Hello! とは表示されずに404エラーになってしまいます。
【.htaccessの編集】
上記問題を解決するためには、.htaccess の 編集を行う必要があります。.htaccess は Laravel インストールフォルダの public フォルダ直下にあるのでテキストエディタで開き、編集します。
編集前
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
編集後
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes If Not A Folder...
RewriteRule ^(.*)/$ /app_laravel/$1 [L,R=301]
RewriteBase /app_laravel
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
RewriteCond %{REQUEST_FILENAME} !-d を削除、
RewriteRule ^(.*)/$ /$1 [L,R=301] を
RewriteRule ^(.*)/$ /app_laravel/$1 [L,R=301] に編集、
RewriteBase /app_laravel を追記しています。
改めてブラウザで
http://localhost/app_laravel/aaa
を表示してみると、無事画面に Hello! と表示されました!
とりあえず、これで完成です。
【Eclipse(Aptana)のプロジェクト作成】
Eclipse(Aptana)のプロジェクト新規作成をし、プロジェクト名に先ほど作成 した Laravelプロジェクトの名前(今回の例ならば app_laravel)を指定します。すでにフォルダがあるので警告が出ますが、かまわず[完了] ボタンを押せばプロジェクトが作れます。
Laravel 5.1 のプロジェクト作成(インストール)
超久しぶりの投稿です。
PHPフレームワークのLaravelを仕事で使うことになったので、基本的なことをメモしていきたいと思います。
Laravelは日本ではまだマイナーですが、海外では人気No1のPHPフレームワークだそうです。日本では書籍もまだほとんど出ておらず、情報に乏しいのが難点です。最新版のバージョンは5.1ですが、出回っている情報もまだバージョン4までのものが多いみたいです。
さて、とりあえずは開発に必要な環境を用意するところからやってみたいと思います。Window8.1上のxamppに開発環境を作っていきます。
【下準備 Composer のインストール】
LaravelではComposerというツールを使ってパッケージ等の管理を行っているようです。なのでまずはComposerをインストールします。下記URLからインストーラーをダウンロードしてインストールしてください。
https://getcomposer.org/download/
【Laravelのプロジェクト作成】
まずは、xampp(apache)のhtdocs以下にLaravelプロジェクトを作ってみます。
①コマンドプロンプトを開き、カレントディレクトリをhtdocsまで移動する。
②以下コマンドを打ち、Laravelをインストールする。
上記コマンドを打つ場合は最新バージョンのLaravelがインストールされる。
バージョンを指定してインストールしたい場合は、以下のようにする(例は4.2の場合)。
③インストールしたLaravelのバージョン確認
インストールしたディレクトリで確認コマンドを打つ。
>php artisan --version
④動作確認
ブラウザでLaravelをインストールしたフォルダの下のpublicを表示する。
http://localhost/app_laravel/public/
Laravel5と画面に表示されればとりあえずOK。
【とりあえずのHello World】
①app_laravel/app/Http にある routes.php をテキストエディタで開き、以下を記述。
return 'Hello!';
});
②ブラウザで確認する。下記URLをブラウザで開いてみる。
http://localhost/app_laravel/public/aaa
画面にHello!と表示されればひとまず成功。
しかしURLにpublicとか入ってちょっと気持ち悪いですね。次回はちょっと違ったやり方でプロジェクトを作ってみましょう。
とりあえず今回はここまで!