javascript - 为什么我按照书上的实例一直报错,connect.static is not a function这么简单的语句唉

 donglin204 发布于 2022-11-14 08:05



var connect = require('connect');
connect.createServer(
    connect.static('../angularjs')
).listen(5000);



就这么一句代码,控制台一直 TypeError: connect.static is not a function
报错,然后我输出connect,没问题,但是createServer方法就报错,一次使用nodejs,按照书上来的,怎么一直不行呢?

声明一点,我已经npm install connect模块了!!!!!!
7 个回答
  • 现在技术更新的太快了,看书的话一定要记得看版本,因为你正常安装的,都会默认安装最新的稳定版本,有极大的可能会跟书上的版本不一致,如果更新幅度小还好,更新幅度大,书上的代码很可能就废掉了!

    所以: 学技术的正确姿势是:

    1. 首先看官方网站

    2. 看不懂的看国内的技术贴(注意看时间!太旧的时效性会降低)

    3. 看相关技术的论坛

    4. 不懂的就问~

    2022-11-14 09:33 回答
  • 安装的express版本与书上写的不一致,很有可以书已经过时,还是3.X,而现在都是4.X了!

    2022-11-14 09:33 回答
  • 版本已经更新了,看看新版本的吧!

    2022-11-14 09:33 回答
  • 你执行了npm inatall connect了吗?你可以在第二行加一句console.log(connect)看看,感觉是undefined

    2022-11-14 09:33 回答
  • 那是因为 这行代码运行需要引入 connect模块
    根据提示connect.static is not a function 就是找不到这个模块嘛
    一般来说 你需要执行上一步 npm install connect 放到本地。

    2022-11-14 09:33 回答
  • 原因是3.x的connect把很多非核心功能分离出去了, 由其他的middleware实现. 2.x的static方法, 在3.x中由serve-static实现. 你安装的是3.x的版本, 所以会报这个错.

    解决办法, 在安装connect的时候指定使用2.x的connect

    npm install connect@2.x

    另:

    其他被分离出去的功能参见connect的github主页.

    你这本书似乎和现在的情况出入有点大. 如果可以, 尽量不要看中文书, 多看官网的wiki, 文档一类的.

    connect的意义是中间件的思想. 可以学习expressjs, 然后再学个all in one类型的框架, 例如meteor, sails等等.

    2022-11-14 09:33 回答
  • pro angularJS?
    我当时看这本书的时候也遇到过,楼上说的对,高版本的NodeJs不支持connect,需要加入这个



    这是是我当时看的答案,
    http://stackoverflow.com/questions/24346161/nodejs-connect-cannot-find-static

    解决别忘给个采纳啊

    2022-11-14 09:33 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有