Fresh Handlebars install会在首次运行时生成ReferenceError

时间:2012-06-14 18:29:12

标签: javascript node.js

我正在尝试使用Handlebars,并获得一个不知疲倦的错误。尝试了本地安装和全局安装。

$ sudo npm install -g handlebars
$ handlebars
/usr/local/lib/node_modules/handlebars/lib/handlebars/base.js:8
Handlebars.VERSION = "1.0.beta.5";
^
ReferenceError: Handlebars is not defined
    at /usr/local/lib/node_modules/handlebars/lib/handlebars/base.js:8:1
    at Object.<anonymous> (/usr/local/lib/node_modules/handlebars/lib/handlebars/base.js:100:1)
    at Module._compile (module.js:446:26)
    at Object..js (module.js:464:10)
    at Module.load (module.js:353:31)
    at Function._load (module.js:311:12)
    at Module.require (module.js:359:17)
    at require (module.js:375:17)
    at Object.<anonymous> (/usr/local/lib/node_modules/handlebars/lib/handlebars.js:1:80)
    at Module._compile (module.js:446:26)

其他一些有用的信息:

$ node --version
v0.6.19
$ npm --version
1.1.24

我还尝试编辑文件handlebars / base.js。我将顶行更改为

Handlebars = this.Handlebars = {}

暂时消除了我收到的第一个错误。但随后出现了一个后续错误:

$ handlebars
module.js:337
    throw new Error("Cannot find module '" + request + "'");
          ^
Error: Cannot find module './parser'
    at Function._resolveFilename (module.js:337:11)
    at Function._load (module.js:279:25)
    at Module.require (module.js:359:17)
    at require (module.js:375:17)
    at Object.<anonymous> (/usr/local/lib/node_modules/handlebars/lib/handlebars/compiler/base.js:1:80)
    at Module._compile (module.js:446:26)
    at Object..js (module.js:464:10)
    at Module.load (module.js:353:31)
    at Function._load (module.js:311:12)
    at Module.require (module.js:359:17)

是否有其他人在安装Handlebars时遇到问题,或者有关如何安装和运行安装的建议?

1 个答案:

答案 0 :(得分:1)

您是否尝试使用命令行把手或尝试导入模块把手?

第一个将要求您在安装包时使用-g参数。后者将要求您安装没有-g参数的把手。 -g参数仅用于在shell中创建命令/程序的包。

因此,如果您使用命令行编译某些文件,请执行以下操作:

npm install -g handlebars

壳牌

$ handlebars # should output all the command line options.

如果您想在其中一个模块中使用它,请执行以下操作:

npm install handlebars

file.js

var Handlebars = require('handlebars');
console.log(handlebars); // should output all the methods.