🩹
next.js(vercel)でString.prototype.replaceAllをpolyfillする
最近stringに生えたreplaceAll
はだいぶ便利だ。今までreplace(/foo/g, "baz")
のようにしていたものをreplaceAll("foo", "baz")
などできる。
ただこれはnode.jsではv15からのみ入っていて、v14以下では利用出来ない。
現状vercelはnode v14系なので、利用するとランタイムエラーが起きる
そこで使うのを諦めるかpolyfillするかの選択肢になる。
調べると下記のようなissueが見つかった
要は_app.js
に記載するのがお作法らしい。[1]
例えばcore-js
をpolyfillとして利用するならこんな具合になる
// _app.js
import 'core-js/features/string/replace-all' // 追加
function MyApp({ Component, pageProps }) {
return <div>
<Component {...pageProps} />
</div>
}
export default MyApp
-
Custom Pollyfillの項目にはサラッと書いてあるようだった ↩︎
Discussion