鍍金池/ 問(wèn)答/HTML/ Router.use() requires a middleware funct

Router.use() requires a middleware function錯(cuò)誤提示

錯(cuò)誤提示如下:
"D:Program FilesJetBrainsWebStorm 2017.2.4binrunnerw.exe" "D:Program Filesnodejsnode.exe" I:Developblog2app.js
I:Developblog2node_modulesexpresslibrouterindex.js:458

  throw new TypeError('Router.use() requires a middleware function but got a ' + gettype(fn))
  ^

TypeError: Router.use() requires a middleware function but got a Object

at Function.use (I:\Develop\blog2\node_modules\express\lib\router\index.js:458:13)
at Function.<anonymous> (I:\Develop\blog2\node_modules\express\lib\application.js:220:21)
at Array.forEach (<anonymous>)
at Function.use (I:\Develop\blog2\node_modules\express\lib\application.js:217:7)
at Object.<anonymous> (I:\Develop\blog2\app.js:22:5)
at Module._compile (module.js:635:30)
at Object.Module._extensions..js (module.js:646:10)
at Module.load (module.js:554:32)
at tryModuleLoad (module.js:497:12)
at Function.Module._load (module.js:489:3)

進(jìn)程已結(jié)束,退出代碼1

**

源代碼如下

**

var express = require("express");
var swig = require("swig");

var app = express();

app.use("/public",express.static(__dirname + "/public"));


app.engine("html",swig.renderFile);
app.set("views","./views");
app.set("view engine","html");
swig.setDefaults({cache:false});

//根據(jù)不同功能劃分模塊
app.use("/admin",require("./routers/admin"));
app.use("/api",require("./routers/api"));
app.use("/",require("./routers/main"));


app.get("/",function (req,res,next) {
//    res.send("<h1>welcome</h1>");
    /*

     */
    res.render("index");
})

app.listen(8081);

回答
編輯回答
祉小皓

這樣寫沒(méi)有問(wèn)題,要在對(duì)應(yīng)的加載文件里寫module.exports = router; 謝謝,終于解決了

2017年3月3日 10:21