概要

Prism.jsを1.13.0から1.14.0へバージョンアップした際に下記のようなエラーが発生した。

Uncaught (in promise) TypeError: Cannot read property 'tokenizePlaceholders' of undefined

解決方法

これまでは下記のように言語ファイルをimportしていた。

import 'prismjs/components/prism-markup';
import 'prismjs/components/prism-css';
import 'prismjs/components/prism-clike';
import 'prismjs/components/prism-javascript';

TypeError: Cannot read property ‘tokenizePlaceholders’ of undefined · Issue #1400 · PrismJS/prism · GitHubを参考にloadLanguages経由で下記のように読み込むよう修正した。

import loadLanguages from 'prismjs/components/index';

loadLanguages([
  'markup',
  'css',
  'clike',
  'javascript',
]);