Jade:ReferenceError:TokContext没有定义
我使我的app.js
最简单的节点服务器。 要做到这一点,我安装了下一个库: npm install node-jsx react express jade
。
现在,当我用node app.js
启动它时,会得到下一个错误:
c:\Programming\React_Examples\server rendering\node_modules\jade\node_modules\constantinople\node_modules\acorn\dist\acorn.js:2275 _classCallCheck(this, TokContext); ^ ReferenceError: TokContext is not defined at new TokContext (c:\Programming\React_Examples\server rendering\node_modules\jade\node_modules\constantinople\node_modules\acorn\dist\acorn.js:2275:25) at Object../state (c:\Programming\React_Examples\server rendering\node_modules\jade\node_modules\constantinople\node_modules\acorn\dist\acorn.js:2285:11) at s (c:\Programming\React_Examples\server rendering\node_modules\jade\node_modules\constantinople\node_modules\acorn\dist\acorn.js:1:681) at c:\Programming\React_Examples\server rendering\node_modules\jade\node_modules\constantinople\node_modules\acorn\dist\acorn.js:1:732 at Object../expression (c:\Programming\React_Examples\server rendering\node_modules\jade\node_modules\constantinople\node_modules\acorn\dist\acorn.js:907:21) at s (c:\Programming\React_Examples\server rendering\node_modules\jade\node_modules\constantinople\node_modules\acorn\dist\acorn.js:1:681) at e (c:\Programming\React_Examples\server rendering\node_modules\jade\node_modules\constantinople\node_modules\acorn\dist\acorn.js:1:852) at c:\Programming\React_Examples\server rendering\node_modules\jade\node_modules\constantinople\node_modules\acorn\dist\acorn.js:1:870 at a (c:\Programming\React_Examples\server rendering\node_modules\jade\node_modules\constantinople\node_modules\acorn\dist\acorn.js:1:150) at Object.<anonymous> (c:\Programming\React_Examples\server rendering\node_modules\jade\node_modules\constantinople\node_modules\acorn\dist\acorn.js:1:383)
问题是node-jsx和acorn模块(后者由Jade使用)之间的冲突。
如果您可以将所有的JSX保存在扩展名不是.js的文件中,比如说.jsx,那么您可以replace
require('node-jsx').install();
打电话给:
require('node-jsx').install({extension: '.jsx'});
另一种select可能是来自Jade的不同的模板引擎。
或者限制你的JSX包含到你的主模块之外的模块(不确定这个,但值得尝试,如果需要的话)。