はじめに
非常にググラビリティの低い"form-serialize"というJSライブラリが地味便利でした。
使いみち
axiosとか使ってJSでフォーム送信したいときとかに便利です。
やってることはjQueryのserialize()と変わりなさそうなんですが、serializeのためだけにわざわざjQuery入れるのはちょっと…、というときに重宝します。
使い方
宗教上の理由により、Laravelでlaravel-mix使ってる前提です。
npm install form-serialize
まずはnpmでインストールします。--only-dev付けるかどうかは場合見て判断してください。
できたらあとはapp.jsとかで呼び出すだけなんですが、
require('form-serialize')
とやってもうまくいかないので、
import serialize from 'form-serialize'
という呼び出し方をしてあげます。あとは
let form = document.getElementById('form');
let formData = serialize(form, {hash: true});
という感じです。これでaxiosがおいしく食ってくれますね。