为了账号安全,请及时绑定邮箱和手机立即绑定

现代Web开发方法

标签:
Html5 CSS3

前语

在本文中,笔者将介绍运用根据单页JavaScript的结构的基本概念,优点和症结

让咱们看看守旧的Web运用程序是什么样行事的。平日,一个完完全全的旅馆服务器端运用程序在服务器本人上生成Web运用程序的保有数据。唯有如此本领在页面展现以前将其发送给客户端

传统的web运用.png

情节从数据库中得到,然后经过调整器传递,最终在视图模板发送前与视图模板合併

几年前,单页运用程序伊始在开采人士中流行起来。单个页面运用程序向服务器发送三个HTML文件结构的伏乞,以及体制莆仙戏本

优点是咱们只取得大家需求的从头到尾的经过的一片段,并非成套页面,那供给了越来越少的服务器负荷和越来越快的用户分界面。

  • Angular.js - 衔接到静态HTML的客户端库,具备一组用于数据绑定的习性

  • ReactJS - 用于营造Web运用程序的根据组件的客户端库

  • Vue.js - 供给双向数据绑定(也能够在AngularJS中见到)和服务器端渲染,如Angular 2和ReactJS

  • Ember.js - 客户端库运用Handlebars模板引擎来创设Web运用程序

  • Meteor.js - 由NodeJS和MongoDB支撑的全栈结构。在那之中运用Blaze,Angular和React举行模板化

![](https://upload-images.jianshu.io/upload_images/5356153-ad64fde7f719e75f.png)

各大结构的比较.png

单页运用程序在内容,逻辑调整器和示范文稿之间创制了尽头。对于MVC结构来讲,它是二个关切点的告别

  • 小结:MVC

  • 式的

  • 裨益

贰个劳务器端的例证

让大家从获得用户的服务器端控制器初始,以JSON格式重回贰个列表

/**
 *  Users controller (NodeJS)
 */
const app = express(),

/**
 *  This function fetches staff users
 *  from the MongoDB collection
 */
const fetchUsers = (offset = 0, limit = 10) => {
  return new Promise((resolve, reject) => {
    Users.find({}, {
      $offset: offset,
      $limit: limit
    }).then((result) => {
      if(error) {
        reject(error);
      }
      else {
        resolve(result);
      }
    });
  });
};

/**
 *  This function returns a list
 *  of users in JSON format.
 */
app.get('/staff/users', (request, response) => {
  fetchUsers()
  .then((result) => {
    response.status(200).json(result);
  })
  .catch((error) => {
    response.status(500).json(error);
  });   
});

客户端调整器

咱们能够利用以下代码从列表中表现用户


{{ name }} is in {{ location }}.

阅读器开始显示模板时,会调用调整器以博得用户的模版。当用户被抓取时,它们会主动显示给列表

那几个是局地概念,倘若你是初学JavaScript的客户端支出

  • 总结

  • <p font-size:medium;"="" style="overflow-wrap: break-word; margin-top: 5px; margin-bottom: 5px; color: rgb(0, 0, 0); font-family: "sans serif", tahoma, verdana, helvetica; font-size: 12px; white-space: normal;">整篇

  • 首如果
  • 古板
  • 的web运用过度到

  • 代的web运用,也

  • 等于今后
  • 流行的单页面运用开

  • ,其实单页面运用本质上也

  • 等于
  • Ajax的

  • 行使
  • ,不

  • 更换守旧
  • 的客户端与服务端的

  • 反复
  • 的数

  • 交互

  • 格局
  • ,

  • 制止
  • 呼应慢,页面闪耀空白,整个页面改写等诟病嘛,

  • 高用户体会

  • 收缩
  • 服务器端的

  • 压力嘛,将视图层(view),

  • 调节
  • 层(control),数据层(model)

  • 行别离,将一些页面逻辑

  • 调节
  • 劳动
  • 器端给抽离出来让前

  • 面叁个
  • 理,比

  • 路由等,服务端只供给能

  • 识前端http

  • 求的数据,

  • 达在不改写整个页面

  • 包车型地铁景
  • 况下,在用户

  • 实施有个别
  • DOM事件(比如点击,翻滚)等时,页面

  • 包车型地铁一些
  • 改写呈递新数据的

  • 显示
  • ,至于

  • 越来越
  • 深的体

  • ,

  • 依旧
  • 要多撸代码,概念的

  • 事物
  • 说多了都

  • 以传说
  • ,虚无缥缈,苍白无力的,代码便是对

  • 定义
  • 理论最

  • 的解释



点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消