JavaScript (Node.js) : app.set('port', port);^ TypeError: app.set 不是一个函数



这是我尝试运行打印常见"Hello World"的简单程序时出现的错误代码。

 app.set('port', port);
        ^
    TypeError: app.set is not a function
        at Object.<anonymous> (/home/xpuser/Desktop/Nodetest/bin/www:16:5)
        at Module._compile (module.js:409:26)
        at Object.Module._extensions..js (module.js:416:10)
        at Module.load (module.js:343:32)
        at Function.Module._load (module.js:300:12)
        at Function.Module.runMain (module.js:441:10)
        at startup (node.js:139:18)
        at node.js:968:3

编写"模块导出 = 应用程序;"这是出现的错误:

module.exports = app;
                  ^
ReferenceError: app is not defined
     at Object. <anonymous> (/home/xpuser/Desktop/Nodetest/app.js:23:18)
     at Module._compile (module.js: 409: 26)
     at Object.Module._extensions..js (module.js: 416: 10)
     at Module.Load (module.js: 343: 32)
     at Function.Module._load (module.js: 300: 12)
     at Module.require (module.js: 353: 17)
     at require (internal / module.js: 12: 17)
     at Object. <anonymous> (/ home / xpuser / Desktop / Nodetest / bin / www: 7: 11)
     at Module._compile (module.js: 409: 26)
     at Object.Module._extensions..js (module.js: 416: 10)

我认为您正在尝试使用"Express"模块,因此您需要在文件中使用它:

var express = require('express');
var app     = express();

然后,您可以设置:

var port = "1000";
app.set('port', port);
module.exports = app;

如果你有 app = require("../app"),那么只需确保在应用程序的底部.js有: module.exports = app这样,当你在/bin/www 中需要它时,它实际上会抓取代码。

相关内容

最新更新