我正在尝试在我的 Node JS 服务器中使用 elementtree 但是服务器启动时会生成以下消息
找不到模块“sax”
我必须从 zip 安装 elementree,我做错了什么?
这些是我的要求声明
var cache = require('./node_modules/node-cache');
var elementTree = require('./node_modules/node-elementtree');
这是我的文件夹结构
模块\node_modules\node-cache
模块\node_modules\node-elementtree
我的服务器js脚本位于\module
最佳答案
问题是因为您没有使用 npm 来安装 node-elementtree 模块
This是node-elementtree的package.json
。并且明确提到了对sax 0.3.5的依赖
"dependencies" : {
"sax": "0.3.5"
}
如果您完成了npm install
,它将解决您的依赖关系约束。
在你的node-elementtree模块中它使用sax here并且您的需求未解析为正确的模块。因此出现了错误。如果您无法使用 npm,那么如果可能的话也使用 zip 安装 sax,但这可能会再次增加您的依赖项列表,如上所述。所以,尝试解决 npm 问题
你也不需要使用
var cache = require('./node_modules/node-cache');
var elementTree = require('./node_modules/node-elementtree');
在你的代码中
var cache = require('node-cache');
var elementTree = require('node-elementtree');
上面就可以了。 Node 自动从 ./node_modules 目录甚至许多 more 中查找模块地点
关于node.js - Node js elementtree 需要 get 找不到模块 'sax',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11343419/