我已经谷歌已经找到了答案,因为这是一个常见的问题,但所有的回复都指向使用替代品而不是解释为什么这不起作用,所以我'我问这里。
我把这段代码放在我的Atom的init.coffee脚本中: beautify = require(' js-beautify')。html
但Atom因Failed to load init.coffee
和Cannot find module 'js-beautify'
而失败。奇怪的是,这适用于一个包,如果我在Atom的控制台上输入完全相同的代码,这是有效的。
当然,我可以为此编写一个包,实际上有一些可用,这只是一个例子,因为我想学习如何从init.coffee中获取模块以供将来调整。
非常感谢!
答案 0 :(得分:2)
当您从require()
init.coffee
时,Atom会在自己的路径中查找这些模块。您可能希望这样做的一个示例是,如果您有oni = require('oniguruma')
来访问正则表达式函数。
要进入js-beautify
,您必须指定其完整路径。到目前为止,只明确声明整个绝对路径对我有用:
beaut = require 'C:\\Users\\<username>\\.atom\\packages\\atom-beautify\\node_modules\\js-beautify'
console.log beaut
实际上,使用这样的模块最可靠的方法是全局安装它,以便您可以链接到全局NPM文件夹。如果要卸载软件包,则链接到软件包内的模块将会中断。