プログラミング -> 言語 -> JavaScript
結論 v22.5.1(以降)を入れましょう*1。 github.com *1:これを書いている時点では、まだ nodenv ではインストールできません
結論 以下のとおりです。 function sendDraftMails() { const draftMails = GmailApp.getDrafts() for(let i = 0; i < draftMails.length; i++) { draftMails[i].send() } } ドキュメント Gmail の GAS については公式ドキュメントが分かりやすくて助かりま…
結論 --testNamePattern=<regex> jestjs.io 具体例 $ jest --textNamePattern=".*hogehoge.*"</regex>
結論 // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore
結論 clock を使う。 docs.cypress.io 具体例 describe('My First Test', () => { it('Foo', () => { const travelToDateTime = new Date( new Date('2022-06-24 21:00:00').toLocaleString('ja-JP') ).getTime() cy.clock(travelToDateTime) cy.visit('/') …
※ 2022年4月10日(日)現在の情報です 結論 Ruby (https://github.com/sferik/twitter) の場合 /path/to/vendor/bundle/ruby/3.1.0/gems/twitter-7.0.0/lib/twitter/rest/request.rb:97:in `fail_or_return_response_body': User has been suspended. (Twitt…
結論(理由) デフォルトで名前空間のセパレータとして定義されているから。 以下は next-translate の README です。 gyazo.com どうするか 設定ファイルで定義を変えます。当然ながら名前空間側のの記述方法が変わってくるので注意が必要です。 next-trans…
#結論 コンポーネントをマウントするときに stubs プロパティを用いて明示的にスタブ化する。 具体例 以下のような感じでコンポーネントを遅延読み込みしているとします。 components: { ChienComponent: () => import("path/to/chien_component") }, この…
結論 task という機能(コマンド)を使います。公式ドキュメントのとおりです。 docs.cypress.io cypress/plugins/index.js に上記の内容をコピペします。 プリントデバッグしたい箇所で、 cy.task('log', 'This will be output to the terminal') のように…
詳細は全てリンク先の公式ドキュメントに書いてあるので、そちらを見るのが確実です。複数の引数を取る場合にいろいろと柔軟な挙動を実現できたりします。 よく使うメソッド should マッチャ(を第一引数に取る)用のメソッドです。 describe('Foo', () => {…
結論 以下のようなプロパティを package.json の scripts に書けば良いです。 (ここまで省略) "scripts": { "cypress:exec": "kill $(lsof -i :3100 | grep node | awk '{print $2}') & next build && next start --port 3100 & wait-on -t 30000 http-get…
Danger JS とは danger.systems 結論 ;(async () => { const changedNumberOfLines = await danger.git.linesOfCode() // ここに処理を書く })() 背景 1. Ruby版の lines_of_code メソッドは使えない undefined が返ってくる。 gyazo.com 2. 検索しまくって …
結論 作成するファイルは以下の 2つ です。 .github/workflows/danger_js.yml ファイル名は何でも良いです 単独のファイルとして切り出さず、既存の yml に内容を追加しても大丈夫です dangerfile.js ファイルの内容 2つのファイルの内容は次のとおりです。 …
理由 Storybook の表示に用いられる iframe.html などが output のディレクトリに作られてしまうから*1。 具体例 .storybook/main.js に以下のように書くと output のディレクトリが設定されてしまいます。 module.exports = { (省略) webpackFinal: async…
注意 フロントエンドは移り変わりが激しいため、この方法が誤りになる可能性があります 2021/09/06 時点での情報です 結論 1. sass-loader の v10 を入れる 最新版を入れてしまわないように注意する*1。 $ yarn add --dev sass-loader@^10.0.0 2. style-load…
結論 node-gyp を入れる。 現象例 以下のような感じで npm / yarn で入れるときにエラーが出る場合です。 ➤ YN0007: │ deasync@npm:0.1.21 must be built because it never has been before or the last one failed ➤ YN0009: │ deasync@npm:0.1.21 couldn't…
結論 components: { Hoge } と書くべきところを component: { Hoge } と書いていたから(複数形にしていなかった)。 感想 一度通っておけば以後は間違えないタイプのやつです*1。 *1:そういう意味では一度通ったというのは意義があったことなのかもしれない
結論 ワイルドカードが含まれている場合はクォートでくくりましょう。 具体例 例えば、以下のような書き方だとエラーになります。 "scripts": { "hoge": "yarn clean && run-s -c hoge:*", ワイルドカードが含まれる場合は以下のようにクォートでくくります…
結論 cy.get('.foobar').eq(3) のように、get したあとに eq で取得できる 注意点として、get の戻り値を変数に格納している場合、eq を実行してしまうと格納した変数のオブジェクトは変更される シャローコピーになるということ 具体例 以下のような HTML …
環境 Windows (WSL2) Node のバージョン管理には nodenv を使用している 状況 具体的には以下のようなエラーがターミナルに出るときです。 /usr/bin/env: 'node':そのようなファイルやディレクトリはありません Jest process "watch-tests" ended unexpected…
material-table とは github.com 現象 こういう感じになる現象です。 gyazo.com 結論 fonts.googleapis.com から Material Icons をインポートしましょう。 <head></head> 内に以下を書き加えます*1。 <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons" /> 修正結果 上記のインポートの結果、以下のようになりました。 gyazo.</link>…
simple-git-hooks とは github.com 結論 以下の通りにすれば自動で .git/hooks/pre-commit を作成してくれます。 1. インストールする npm or yarn で simple-git-hooks をインストールします。 2. package.json に hooks のコマンドを記述する 以下のように…
結論 以下のリリースノートに書いてあるとおりです。 github.com gyazo.com 具体的にどうするか インストールの際に v10 に抑えるようにしましょう。 $ yarn install --dev 'sass-loader@^10.0.0' npm を用いる場合も同様です。 Dependabot など Dependabot …
結論 DOM が構成される前に innerHTML や textContent が実行されてしまっているから。 対処方法 </body> タグの直前に JavaScript を書く。 感想 すごく当たり前のことなんですが、Vanilla JS を久しぶりに(ほんとうに久しぶりに)雑に書いたらハマってしまいまし…
結論 this.$options._componentTag 例 console.log(this.$options._componentTag) // foo-bar-hoge-fuga 補足 メソッド名からも分かるように、正確には「コンポーネント名」ではなく「コンポーネントのタグ名」です。
前提 You may have an infinite update loop in a component render function. とは何ぞや、ということはここでは省略します*1。 結論 このメッセージは WARN 扱いですが、本番環境のビルドでは無限ループになることがあります(ありました)。内容からして…
結論 以下のように書いた関数の戻り値は Promise となります。 async function currentDirFileNames(path: string) { const fs = require('fs') const fsPromises = fs.promises return fsPromises.readdir(path) } 例
はじめに 本記事のタイトルは、以下の記事にならっています。 overreacted.io また、以下の記事に触発されています。 blog.unasuke.com zenn.dev 結論 以下のことをほとんど知りません。 Go React TypeScript Prisma GraphQL Cypress 焦り 上記のことに無知…
結論 ログです。
結論 以下のページを見ましょう。