express 学习

来源:互联网 发布:奥登nba那场数据最强 编辑:程序博客网 时间:2024/05/01 16:10

安装 express
目录结构

  • controller 暴露 显示某个页面
  • models 写主要逻辑方法,读文件,连库
  • public 静态资源文件
  • views 模板文件
  • app.js 入口文件
  • package.json …

写入口文件

app.use(express.static("./public"));//静态文件目录app.get("/",router.showIndex);//设置路由跳转的目录 //输出展示的首页exports.showIndex = function (req,res,next) {    //内层函数,不是return回来东西,而是调用高层函数提供的回调函数。把数据当做回调函数的参数来使用。    var des = "花千束"    file.getAllAlbum(function (err,allAlabums) {        if(err){        //如果错误,执行下一个            next();            return;        }        //渲染 views/index模板 并给模板传参数         res.render("index",{            "albums":allAlabums,            "description":des        })    })}//读文件exports.getAllAlbum = function (callback) {    fs.readdir("./uploads",function (err,files) {        var allAlbums = [];        if(err){            callback("没有找到uploads文件",null);            return;        }        //迭代器 立即执行函数 (function(){})()        (function iterator(i) {            if(i == files.length){            //文件读取完毕 返回allAlbums(文件夹)                callback(null,allAlbums);                return;            }            //检测文件是否存在            fs.stat("./uploads/"+files[i],function (err,stats) {                if(err){                    callback("找不到文件"+files[i],null);                    return;                }                //判断是文件夹                if(stats.isDirectory()){                    allAlbums.push(files[i])                }                //调用自身 类似递归函数                iterator(i+1);            })        })(0)    })}
原创粉丝点击