私はしばらくの間、クライアント側で handlebars.js を使用しており、事前にコンパイルされたテンプレートを使用したいと考えていました。Node.js へのインストールを含め、Web で見つけた一般的な手順に従いました。
npm install handlebars -g
次に、Node.js ディレクトリに移動し、単純なテンプレートをコンパイルしてみます。
handlebars test.handlebars -f test.js
そして、エラーが発生します(コマンドプロンプト、気をつけて、ごめんなさい):
C:\Users\Administrator\AppData\Roaming\npm\node_modules\handlebars\lib\handlebars.js:1
(function (exports, require, module, __filename, __dirname) { import Handlebar
^^^^^^
SyntaxError: Unexpected reserved word
at Module._compile (module.js:439:25)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (C:\Users\Administrator\AppData\Roaming\npm\node_modules\handlebars\bin\handlebars:105:18)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
エラーが発生したこの handlebars.js ファイルにアクセスすると、コードが JavaScript のように見えないことがわかります。
import Handlebars from "./handlebars.runtime";
// Compiler imports
module AST from "./handlebars/compiler/ast";
import { parser as Parser, parse } from "./handlebars/compiler/base";
// ... etc.
これが何なのかよくわからないので、何が間違っていたのか、何が問題なのかわかりません。