server.js文件内容为:
var connect = require('connect');
connect.createServer(connect.static("../angularjs")).listen( 5000);
启动 WEB服务
node server.js
Microsoft Windows [版本 6.1.7601]
版权所有 (c) 2009 Microsoft Corporation。保留所有权利。
D:\Program Files\node\node6.13>node server.js
D:\Program Files\node\node6.13\server.js:2
connect.createServer(connect.static("../angularjs")).listen(5000);
^
TypeError: connect.static is not a function
at Object.<anonymous> (D:\Program Files\node\node6.13\server.js:2:36)
at Module._compile (module.js:577:32)
at Object.Module._extensions..js (module.js:586:10)
at Module.load (module.js:494:32)
at tryModuleLoad (module.js:453:12)
at Function.Module._load (module.js:445:3)
at Module.runMain (module.js:611:10)
at run (bootstrap_node.js:387:7)
at startup (bootstrap_node.js:153:9)
at bootstrap_node.js:500:3
D:\Program Files\node\node6.13>node server.js
D:\Program Files\node\node6.13\server.js:3
connect.static("../anguarjs")
就这么一句代码,控制台一直 TypeError: connect.static is not a function
报错,然后我输出connect,没问题,但是createServer方法就报错,一次使用nodejs,按照书上来的,怎么一直不行呢?
声明一点,我已经npm install connect模块了!!!!!!
connect包在其最新的3.x版本的代码库中进行了一些更改,将静态中间件移动到它自己的包中。您可以查看此处已移动的包列表。
所以你有两个选择:
Option 1
You can install an older, 2.x version of connect and use that as is:
您可以安装较旧的2.x版本的connect并按原样使用:
npm install [email protected]
Installing the latest 2.X.X version will allow your current implementation to function properly.
安装最新的2.X.X版本将使您当前的实现正常运行。
Option 2
You can continue to use the 3.x version of connect, and also add serve-static
:
您可以继续使用3.x版本的connect,还可以添加serve-static:
npm install serve-static
You would also have to update your server.js
file to include the new serve-static
module:
您还必须更新server.js文件以包含新的serve-static模块:
var connect = require('connect'),
serveStatic = require('serve-static');
var app = connect();
app.use(serveStatic("../angularjs"));
app.listen(5000);