乐鱼app成为大巴黎赞助商

乐鱼app成为大巴黎赞助商举行“同心喜迎二十大 传承中华优秀传统文化”中国古代文化常识竞赛             2023年七年级招生简章             凝望经典赏别样人生 创新表达树文化自信——河池市乐鱼app成为大巴黎赞助商高一年级举行课本剧展演活动             守护青春,护航成长 ——宜州区一中举行法制教育报告会             以赛促教展师风 凝心聚力踏征程 ——乐鱼app成为大巴黎赞助商开展教师教学技能大赛             辩以明思,坐而论道 ——记宜州区一中2024届高二辩论赛             巧借他山石,精雕“三新”玉 ——乐鱼app成为大巴黎赞助商教师赴湖南考察学习交流活动             2023年春季学期“世界地球日”知识讲座成功举办             乐鱼app成为大巴黎赞助商开展防溺水教育活动 全力筑牢生命安全防线             法治教育进校园 护航青春助成长            

DoraCMS

您现在的位置是:首页>文档内容页

文档详情

乐鱼app成为大巴黎赞助商:第4天 路由——路由功能的实现

doramart 2023-06-02 23:51:31 技术文档225849
首先要在App.js的构造函数内,加入 this._route_post_handles = {}和 this._route_get_handles = {}用于储存路由处理器。

乐鱼app成为大巴黎赞助商:路由功能的实现

首先要在App.js的构造函数内,加入 this._route_post_handles = {}this._route_get_handles = {}用于储存路由处理器。

然后,我们在App.js的构造器内的handle函数,做一些改动。加入 handle = self._route_get_handles[req.url] 和  handle = self._route_get_handles[req.url] 代码 ,最后 handle(req,res) 执行就可以了。

而App.prototype.get / App.prototype.post 的代码也需要修改,修改十分简单,只要把handle注入到 self._route_get_handles 或 self._route_post_handles 里即可。

App.prototype.get = function(route,handle){
    this._route_get_handles[route] = handle;
}

App.prototype.post = function(route,handle){
    this._route_post_handles[route] = handle;
}

在编码过程中,有一处BUG,值得注意,就是在App.js构造函数的顶端代码:

function App(){

    function handle(req,res){
        if(middleList.length === 0){        
        }else{
        .....

这里 if(middleList.length === 0){ 是个BUG,因为如果我们没有加入static或其他插件时,GET/POST路由处理器就不会被执行。所以删除了上面这段代码。这个代码的存在,在早期可能有用,但随着项目的迭代, 会修补很多历史性代码。

下一节,列出更改后的App.js代码。

文章评论

取消回复
登录 参与评论

评论列表(

乐鱼app成为大巴黎赞助商