1

我已经从这里下载了 jsfeat ,并解压缩了下载的文件。

在目录中,我写了以下内容:

require("./build/jsfeat.js");
var matrix = new jsfeat.matrix_t(2,2, jsfeat.U8_t | jsfeat.C1_t);
matrix.data[1] = 4; 
console.log(matrix.data[1]);

我运行程序如下:

$ node matrix.js

但是,得到以下错误:

/Users/abc/Desktop/JavaScript/inspirit-jsfeat-59cc928/matrix.js:2
    var matrix = new jsfeat.matrix_t(2,2, jsfeat.U8_t | jsfeat.C1_t);
                     ^

ReferenceError: jsfeat is not defined
    at Object.<anonymous> (/Users/abc/Desktop/JavaScript/inspirit-jsfeat-59cc928/matrix.js:2:19)
    at Module._compile (module.js:425:26)
    at Object.Module._extensions..js (module.js:432:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:311:12)
    at Function.Module.runMain (module.js:457:10)
    at startup (node.js:136:18)
    at node.js:972:3

这是为什么?我该如何解决这个问题?

谢谢。

4

1 回答 1

5

您需要将导入的模块分配给一个变量:

var jsfeat = require("./build/jsfeat.js");

如果您愿意,可以使用NPM安装模块以节省手动下载:

$ npm install jsfeat

该模块将保存到 ./node_modules/jsfeat. 然后,您可以使用var jsfeat = require('jsfeat').

于 2015-10-30T23:01:47.213 回答