标签「JavaScript」(共 12 篇文章)

近几年,“回调地狱(Callback Hell)” 一词经常被提及,成为 Javascript 并发管理中最为讨厌的设计之一。它让你忘记了代码本来应有的样子,以下便是 Express 中验证和处理一个交易的例子:

app.post("/purchase", (req, res) => {
    user.findOne(req.body, (err, userData) => {
        if (err) return handleError(err);
        permissions.findAll(userData, (err2, permissions) => {
            if (err2) return handleError(err2);
            if (isAllowed(permissions)) {
                transaction.process(userData, (err3, confirmNum) => {
                    if (err3) return handleError(err3);
                    res.send("Your purchase was successful!");
                });
            }
        });
    });
});

如今的 MVC 设计模式,使得后台在视图和模型之间完成了分离。可是,前端 html 页面和数据的分离和整合却又遇到了麻烦。当页面大量使用 AJAX 时,整个前端页面的可维护性就变得很差了。原因有几点:

  1. 写在 js 字符串里的 html 文本(包括换行符)必须经过很多反斜线(\)转义;
  2. 大量的 js 语句穿插在 js 字符串里;
  3. 复杂功能较难实现
Copyright © 2017 dremy.cn
皖ICP备16015002号