Pomelo自带demo之Treasures运行报错的解决

Pomelo自带demo之Treasures,下载源码后进入web-server目录,先输入命令 npm install -d 安装第三方模块,之后运行会报错,错误提示是:TypeError: mime.lookup is not a function,web-server\node_modules\connect\lib\middleware\static.js:144。原因是mime模块从2.x版本开始把lookup方法改为了getType,而作者编写时的mime模块是1.x版本。如果把lookup改为getType,虽能解决眼前这个错误,但接下来还会有其它地方报错,因为2.x版本不仅仅修改了这一个方法。更简单的解决办法是直接使用mime的1.x版本。方法有2种:

1、在web-server目录下运行命令:npm install mime@^1
2、打开web-server目录的package.json,在dependencies字段中增加一行:"mime": "^1",意思是安装mime的1.x版本。之后运行命令:npm install -d

第1种方法虽简单,但如果把源码clone到别处,问题会重复出现,所以推荐使用第2种方法,在package.json明确好版本,不管clone到哪,只要npm install -d就好了。

当然,也可直接使用我修改过的代码,地址:https://github.com/foupwang/treasures.git

posted on 2017-10-09 21:53  foupwang  阅读(1127)  评论(0编辑  收藏  举报