夭幻境地

关注技术,关心成长,关怀世事人情

  • 从 Nuxt.js 学习到了什么?

    2018-07-25 00:11 125
    这段时间由于工作需要,对 Nuxt.js 这个框架进行了一些深入的研究,从中学习到了一些东西,所以写下来分享一下。我本人对 Nuxt.js 高度认可,我甚至觉得这种前端工程化的解决方案的架构模式正是我们所需要去学习和借鉴的一种非常优秀的实践。写这篇文章的目的不是教如何使用 Nuxt.js 或学习其相关的一些知识。只是从 Nuxt.js 是如何解决各种开发中的问题来分享一些前端架构方面的想法。当然,如果对以下知识点有所了解更能加深对本文的认识。Nuxt.jsVue + Vuex + Vue-router + Vue-ssrWebpack...
  • bluebird与原生Promise对象及bluebird模块的中文API文档

    2018-07-12 11:30 211
    Promise对象已在ECMAScript 2015中被写入标准,且已被最新版本的浏览器和Node.js/IO.js所支持。bluebird是一个第三方Promise规范实现库,它不仅完全兼容原生Promise对象,且比原生对象功能更强大。相关介绍主要API相关介绍1 bluebird与PromiseJavaScript中有很多第三方的Promise库,在ECMAScript 2015(ES 6)中也实现了一个Promise对象,可以在最新版本的浏览器和Node.js/IO.js中使用。bluebird同样是一个第三方Promise类库,相比其它第三方类库或标准对象来说,其有以下优点...
  • JavaScript的异步通信——XMLHttpRequest详解

    2018-06-15 13:56 273
    简介浏览器与服务器之间,采用 HTTP 协议通信。用户在浏览器地址栏键入一个网址,或者通过网页表单向服务器提交内容,这时浏览器就会向服务器发出 HTTP 请求。1999年,微软公司发布 IE 浏览器5.0版,第一次引入新功能:允许 JavaScript 脚本向服务器发起 HTTP 请求。这个功能当时并没有引起注意,直到2004年 Gmail 发布和2005年 Google Map 发布,才引起广泛重视。2005年2月,AJAX 这个词第一次正式提出,它是 Asynchronous JavaScript and XML 的缩写,指的是通过 JavaScript 的异步通信,从服务器获取 XML ...
  • CORS——跨域资源共享协议标准

    2018-06-15 10:55 237
    CORS 是一个 W3C 标准,全称是“跨域资源共享”(Cross-origin resource sharing)。它允许浏览器向跨域的服务器,发出XMLHttpRequest请求,从而克服了AJAX只能同源使用的限制。简介CORS 需要浏览器和服务器同时支持。目前,所有浏览器都支持该功能。整个 CORS 通信过程,都是浏览器自动完成,不需要用户参与。对于开发者来说,CORS 通信与普通的 AJAX 通信没有差别,代码完全一样。浏览器一旦发现 AJAX 请求跨域,就会自动添加一些附加的头信息,有时还会多出一次附加的请求,但用户不会有感知。因此,实现 CORS 通信的关键是服务器。只要服务器实...
  • img元素下方空白的来源

    2018-05-23 15:29 277
    开发中经常会遇到图片元素img下方多余的空白,到底是怎么回事呢?要弄明白这个问题首先要弄明白CSS对于 display: inline 元素的 vertical-align 各个值的含义。vertical-align 的默认值是 baseline,这是一个西文排版才有的概念:  可以看到,出现在baseline下面的是 p 啊,q 啊, g 啊这些字母下面的那个尾巴。对比一下 vertical-align 的另外两个常见值,top 和 bottom:  可以看到,baseline 和 bottom 之间有一定的距离。实际上,inline 的图片下面那一...
  • Git修正错误

    2018-05-15 18:51 374
    人非圣贤孰能。所以每个VCS都提供一个功能来修复错误,直到Git控制的某一点上。 Git提供了一个功能,可用于撤消对本地存储库所做的修改。假设用户意外地对本地存储库进行了一些更改,然后想要撤消这些更改。 在这种情况下,恢复操作起着重要的作用。恢复未提交的更改假设我们不小心修改了本地存储库中的一个文件,此时想撤销这些修改。为了处理这种情况,我们可以使用git checkout命令。可以使用此命令来还原文件的内容。为了更好的演示,我们首先在 sample/src 目录下创建一个文件:string.py ,其代码如下所示 -#!/usr/bin/python3 var...
  • Git入门文档

    2018-05-15 14:10 423
    假如只能阅读一章来学习 Git,那么本教程绝对是一个不二的选择。本章内容涵盖你在使用 Git 完成各种工作中将要使用的各种基本命令。 在学习完本章之后,你应该能够配置并初始化一个仓库(repository)、开始或停止跟踪(track)文件、暂存(stage)或提交(commit)更改。 本章也将演示如何配置 Git 来忽略指定的文件和文件模式、如何迅速而简单地撤销错误操作、如何浏览项目的历史版本以及不同提交(commits)间的差异、如何向远程仓库推送(push)以及如何从远程仓库拉取(pull)文件。远程仓库是什么?Repository(仓库)包含的内容 - Git的目标是管理一个工程,或...
  • 八个贴士,让你在2018年开发更好的Node.js应用

    2018-03-23 22:50 480
    在这篇文章中,我们收集了一些,我们认为在2018年里,作为一位Node.js开发者所需要的贴士。你可随意挑选,作用在新的一年的实践中。Tip #1: 使用 async - awaitAsync - await 在Node.js 8 中震撼登场了。它改变了我们处理同步事件的方式,并简化了我们先前所写的那些繁杂的代码。如果你还没有使用async - await,参考我们的介绍 。使用它,可以帮助你更新以往对 async programming and Promises 的见解。Tip #2: 熟练运用 imp...
  • HTTP之多事务的连接方式

    2018-02-22 16:56 516
    HTTP是一个应用层协议,基于TCP/IP。HTTP的连接其实就是TCP连接,从头到尾都是。只不过在其中传递的数据包不是任意的二进制,而是HTTP规定好的数据包。数据的发送也不是任意的,而是一个请求一个响应(请求和响应一对构成一个事务)。我们关心连接的使用方式,是因为它事关多事务情况下的性能。而在http中,处理多事务的连接有4种方式:并行连接Keep-Alive持久连接管线(pipeline)。我们拿一个简单的文件作为多事务的案例(文件名为1.html):<html> <body> <h1>image/<h1> <img src=...
  • HTTP之响应状态码

    2018-02-22 15:22 553
    状态码是一个三位的数字,用来告知客户端请求的处理结果。三位数字的第一位是一个分类,指明状态码的类型,以此数字把状态码分为5类:1xx: 信息类 。2xx: 成功。请求被成功的接受或者理解,或者执行。我们常见的200 OK就是这个分类内的。3xx: 重定向 - 为完成请求,需要进一步的行动。我们常见的301 Redirect就是这个分类内的。4xx: 客户端错误。客户端提交的数据错误,不能被理解或者接受等等。我们常见的404 Not Found 就是这个分类内的。5xx: 服务器错误。错误发生了,是服务器的问题,和客户端无关。200 型响应200 系列的状态码都可以表示请求已经成功处理。可是作为...
  • 加载更多