2022-01-01から1年間の記事一覧

yarnでpackage削除

yarn remove パッケージ名

serverless frameworkでdotenvを使う

serverless.yml useDotenv: true hoge: ${env:環境変数名}/api/v1/fuga .env 環境変数名="https://example.com"

【axios】getはOKだが、postだと415 error

getで200が返ってきた物 const res = await axios({ method: 'get', url: '呼び出すAPIのURL', headers: { 'content-type': 'application/json' } }) postで415が返ってきた物 const res = await axios({ method: 'post', url: '呼び出すAPIのURL', headers:…

Webpack compilation failed: Invalid configuration object.

webpack.config.js の内容間違い。 既に動いている内容に書き換えて解決。 const path = require('path'); const slsw = require('serverless-webpack'); module.exports = { entry: slsw.lib.entries, output: { libraryTarget: 'commonjs', filename: '[na…

Error: Cannot find module 'webpack’

エラー内容 webpackがinstallされていない やったこと yarn add webpack yarn webpack init で改善 参考 stackoverflow.com

Chakra UI の toggleスイッチ + react-hook-formでデフォルト値を設定しつつ切り替え可能にする

説明 isChecked を使うとデフォルト値を設定できる。 isChecked の説明に↓と書いてある。 自分でstateやonChangeを使って切替する処理を書かなければいけない。 If true, the checkbox will be checked. You'll need to pass onChange to update its value (…

frourioへPostmanからpatchリクエストするとreqBodyの値が<ref *1>になる

結論 Postmanの使い方間違い 直したこと Postmanから送信するBodyの設定を以下のように変更。 form-dataかつText ↓ rawかつJSON

【Rails】実行するバリデーションの切り替え

↓の方法でできる。これで良いのかそもそもserviceを分けるのか別の方法か、プロジェクトの状況から考える。 qiita.com

綺麗なコードを書く

コメントを沢山書きたい=何かおかしいので、適切な命名で小さく関数化 命名は他との関係性、境界線から考える 根本的なリファクタ(for文使っているものを関数型的に書き換えるなど)をする前に関数として小さく切り出す 代入や可変がないコードを書く bool…

dockerコンテナに入る

プロセス番号 確認 docker ps コンテナに入る docker exec -it プロセス番号 sh

配列の型ガード (string | undefined)[]をstring[]にするなど

コード const userEmails = haveUsersObj.users .map((user) => user.email) .flatMap((email) => (email ? [email] : [])) 参考記事 qiita.com

awsのprofile確認、切り替え

確認 $ aws configure list Name Value Type Location ---- ----- ---- -------- profile <not set> None None access_key XXXXXXXXXX shared-credentials-file secret_key XXXXXXXXXX shared-credentials-file region <not set> None None 切り替え export AWS_PROFILE=切り替</not></not>…

【Node.js】環境変数がうまく取れないときはまずconsole.log(process.env)

.envの環境変数が取れない時。 console.log(process.env) とするとひとまず環境変数の一覧が見られる。 グローバルのものが出てきたりしたら、その辺りが怪しいとか。

【Rails】型キャストされる前の値にvalidationするのは_before_type_cast

良い方法 numericality qiita.com 以下に色々書いたが↑の方法の方が良い。 シンプルに対応できる。 最初に書いていた方法 前提 異常な値が入力されたときにバリデーションしたい データ型が違う値が送られてきてもバリデーションしたい 年齢を3桁の数値のみ…

TypeScript ts-nodeでスクリプトを実行する前に

ts-nodeをインストールする npm install -g ts-node ts-node ファイルパス とすると実行できる

【JavaScript】無名関数をアロー関数に書き換える

無名関数 const nonNameFunc = function(arg){ return arg; } アロー関数 const arrowFunc = (arg) => { return arg; } 差分はこんな感じ。 変数名はどうでも良いとして、 引数の前のfunctionを消して、引数の後に=>をつける感じ。 ↓差分を出すのに以下のツ…

Dockerが動かない場合はプロセスを全消去

dev63.hatenablog.com ↑を書いてからも何度かdocker-compose downやdocker-compose upがなぜかできないみたいなトラブルがあった。 具体的には、 Error response from daemon: cannot stop container: : tried to kill container, but did not receive an ex…

コマンド一発でRails環境構築するリポジトリを作った

ライブラリだとかの検証用に。 rubocopのwarningとか気になるところは色々残ってるので、 時間ある時に直していく。 github.com

【TypeScript】エラーハンドリングの型

instanceofでエラーのクラスを見る try { // 例外になりうる処理 } catch (e) { if (e instanceof TypeError) { return { status: 400 } } else { return { status: 500 } } } qiita.com

【JavaScript】URL形式もしくは未入力を許容する正規表現

/^(https?:\/\/[\w!?/+\-_~;.,*&@#$%()'[\]]+)?$/ qiita.com qiita.com

GoのCRUD APIを作った

github.com

postmanでcurlコマンドをexportする

右の方にあるをclickすると取得可能 learning.postman.com

Rails flashメッセージの設定について分かり易い記事

sharedがsheardってなってるので注意(2022/09/12 2:51:28現在) boku-boc.hatenablog.com

Railsのrails cでjoins失敗時原因を確認する

実行したプログラムの最後に.inspectをつけると良い。 例外の内容などが表示される。

Railsで中間テーブル経由でjoinsしようとするとNameError: uninitialized constant NameSpaceName::ModelName

名前空間の指定が必要なのにできていない時に起きる。 has_manyへ class_name: 'SuccessNameSpace::ModelName' みたいに適切な名前空間を指定してやると良い。 github.com

PrismaでError: P3015 Could not find the migration file at プロジェクトまでの絶対パス/server/prisma/migrations/タイムスタンプ_マイグレーション名/migration.sql. Please delete the directory or restore the migration file.

結論 結論としては該当のディレクトリ削除で動作した。 説明 必要なマイグレーションファイルがないのでマイグレーションできないというメッセージ。 確かに別ブランチのマイグレーション実行したけどいらないので消した。 リストアしろって書いてるが、単に…

JavaScriptで連想配列から分割代入で不要なプロパティを削除する

const twoDimensionsObjArray = [ { key: 1, value: 'aaa', array: [ { aryKey: 10, aryVal: 'a' }, { aryKey: 20, aryVal: 'b' } ] }, { key: 2, value: 'bbb', array: [ { aryKey: 30, aryVal: 'c' }, { aryKey: 40, aryVal: 'd' } ] } ] twoDimensionsObj…

JavaScriptの2次元配列を.flat()で平坦化

flat() const twoDimensionsArray = [[1a, 1b, 1c], [2a, 2b, 2c], [3a, 3b, 3c]] twoDimensionsArray.flat() => ['1a', '1b', '1c', '2a', '2b', '2c', '3a', '3b', '3c'] flatMap() flatMap()を使うと、 オブジェクトの配列内にある配列の平坦な連想配列を…

TypeScriptでnullの型ガード

if(valName === null){return undefined} nullはobjectらしい。 if(typeof valName === 'null'){return undefined}とかだとうまく型ガードできない blog.hirokuma.work

SQLでテーブル名カラム名データ型変更、not nullとdefault 0とコメントを追加する

'ALTER TABLE `table_name` MODIFY `column_name` int(1) DEFAULT 0 NOT NULL COMMENT \'コメント内容\'; railsで execute('') にこれを入れて使った。 普通にsql叩くだけならバックスラッシュでクオーテーションをエスケープしないで良いかも。