我npm安装了node-term-ui包,但是我一直收到“Unexpected string”错误,然后我注意到文件中的语法看起来不一样,并且意识到它是以前从未使用过的CoffeeScript。
如何让它发挥作用?
答案 0 :(得分:4)
zeMirco的答案是正确的,但是让我添加更多信息:node-term-ui
正在做什么是非常非常不寻常的。作者已在main
中将package.json
设置为指向.coffee
文件,而不是将该文件编译为.js
文件。他们也没有在自述文件中注意到这一点。我看到现在正在https://github.com/jocafa/node-term-ui/issues/2讨论这个问题。
作者可能不需要.js
文件,因为如果您正在运行.coffee
文件,则可以require
个其他.coffee
个文件。实际上,您需要直接需要.coffee
个文件才能首先要求coffee-script
模块。那么你在JS文件中可以做的是:
require('coffee-script');
var TermUI = require('node-term-ui');
请务必先将coffee-script
添加为项目依赖项。
我希望作者将修改库,以便CoffeeScript不需要使用它,但这种解决方法应该比zeMirco手动编译模块的解决方案更容易。
答案 1 :(得分:2)
将其编译为javascript
npm install -g coffee-script
coffee --compile TermUI.coffee // assuming you are inside the modules main folder
然后不要求模块需要创建的TermUI.js
文件
var termui = require('./node_modules/node-term-ui/TermUI.js')