我安装tower@0.4.2-22
在我的 Windows 8 机器上。在此之后,我尝试验证安装。我启动了mongod服务器,塔式服务器并调用http://localhost:3000
在我的浏览器中。我收到错误消息(在浏览器窗口和服务器日志中):TypeError: Object Windows 8 has no method 'match' at Object.Tower.MiddlewareAgent [as handle] (C:\Users\Philipp\Documents\Scripts\tower\Tests \test01\node_modules\tower\lib\tower-middleware\server\agent.js:13:21)在下一个(C:\Users\Philipp\Documents\Scripts\tower\Tests\test01\node_modules\tower\node_modules\connect \lib\proto.js:199:15) 在 Object.handle (C:\Users\Philipp\Documents\Scripts\tower\Tests\test01\app\config\server\bootstrap.coffee:23:14) 在下一个 ( C:\Users\Philipp\Documents\Scripts\tower\Tests\test01\node_modules\tower\node_modules\connect\lib\proto.js:199:15) 在 Object.methodOverride [作为句柄] (C:\Users\Philipp \Documents\Scripts\tower\Tests\test01\node_modules\tower\node_modules\connect\lib\middleware\methodOverride.js:37:
我试图弄清楚发生了什么,并发现在模块 \node_modules\tower\lib\tower-middleware\server\agent.js 方法调用 mac: !!agent.os.match(/mac/i), windows: !!agent.os.match(/win/i), linux: !!agent.os.match(/linux/i) 失败,因为 agent.os 是对象类型而不是字符串。我用 mac 替换了这些行:!!agent.os.toString().match(/mac/i),windows:!!agent.os.toString().match(/win/i),linux:!!agent .os.toString().match(/linux/i) 和塔出现并正在运行。
这是代码中的错误还是我的安装有问题?
首先我用 npm install power -g 安装了 tower 然后我用 tower new test01 创建了一个应用程序接下来的步骤是: - cd test01 - npm install - forever server.js(未安装永远失败) - npm install forever -g -永远的 server.js(失败的 mongod 没有启动)-(启动 mongodb)-永远的 server.js(现在正在运行)-蛋糕手表(在另一个提示中-失败,因为 grunt 丢失)-npm install grunt -g -蛋糕手表(现在它正在运行)-(转到浏览器并输入http://localhost:3000
)-(参见上面的错误描述)