Vue 折腾记 – (10) 给axios做个挺靠谱的封装(报错,鉴权,跳转,拦截,提示)
稍微改改都能直接拿来用~~~哟吼吼,哟吼吼…..
如何无痛降低 if else 面条代码复杂度
相信不少同学在维护老项目时,都遇到过在深深的 if else 之间纠缠的业务逻辑。面对这样的一团乱麻,简单粗暴地继续增量修改常常只会让复杂度越来越高,可读性越来越差,有没有固定的套路来梳理它呢?这里分享三种简单通用的重构方式。 所谓的【面条代码】,常见于对复杂业务流程的处理中。…
flex.css快速入门,极速布局
什么是flex.css? css3 flex 布局相信很多人已经听说过甚至已经在开发中使用过它,但是我想我们都会有一个共同的经历,面对它的各种版本,各种坑,傻傻的分不清楚,flex.css就是对flex布局的一种封装,通过简洁的属性设置就能使得它完美的运行在移动端的各种浏览器,…
this、apply、call、bind
这又是一个面试经典问题~/(ㄒoㄒ)/~~也是 ES5中众多坑中的一个,在 ES6 中可能会极大避免 this 产生的错误,但是为了一些老代码的维护,最好还是了解一下 this 的指向和 call、apply、bind 三者的区别。 在 ES5 中,其实 this 的指向,始终…
ES6 实践规范
前言:团队基于 ES6 和 Eslint 规则规定代码规范,本文的目的是梳理和总结团队现在实行的规范。 作者:郑灵华,点餐秒付终端团队成员 目录 一、Eslint 检测 ES6 规范配置 编码格式规范 声明唯一性 初始化定义规范 代码编写注意事项 派生类相关 二、Airbnb 规范节选 箭头函…
ECMA-262-5 详解 – 3.1 词法环境:通用理论 – ds.laboratory
这一节,我们会讨论词法环境的细节,它是在一些编程语言中用于管理静态作用域的一种机制。为了确保能充分理解这一主题,我们会简要讨论下其对立面:动态作用域(并没有直接用于 ECMAScript)。我们会看到环境是如何管理代码中的词法嵌套结构,以及为闭包提供全面支持。
ECMA-262…
前端本地文件操作与上传
第一种是最常用的手段,通常还会自定义一个按钮,然后盖在它上面,因为type=”file”的input不好改变样式。如下代码写一个选择控件,并放在form里面: 可以看到文件的路径是一个假的路径,也就是说在浏览器无法获取到文件的真实存放位置。同时FormData打印出来是一个空的…
『翻译』基于 Vue.js 与 Webpack 的三种代码分割范式
代码分割是提升单页应用初始加载速度的重要方式之一。因为用户不用在第一次进入应用时下载所有代码,用户能更快的看到页面并与之交互。这会改善用户体验,尤其在移动端;而且这对 SEO 有很大帮助,因为 Google 会降低加载速度慢的网站权重。 上周我写了一篇关于Vue.js 与 We…
原生JS实现最简单的图片懒加载
试一下自己撸一个图片懒加载… 懒加载其实就是延迟加载,是一种对网页性能优化的方式,比如当访问一个页面的时候,优先显示可视区域的图片而不一次性加载所有图片,当需要显示的时候再发送图片请求,避免打开网页时加载过多资源。 当页面中需要一次性载入很多图片的时候,往往都是需要用懒加载…
10 个 JavaScript 难点
能够读懂这篇博客的 JavaScript 开发者,运气不会太差…
20个CSS高级技巧汇总
20个CSS高级技巧汇总。使用技巧会让人变的越来越懒,没错,我就是想让你变懒。
VS Code上手与超实用插件安利
说到代码编辑器,我们有必要提一提Sublime Text还有Atom。在开始使用VS Code之前Sublime Text一直是我的主力编辑器,和WebStorm (最强端前端开发工具) 一起用。由于这篇文章主要介绍VS Code下面就简单概括下这几个: Sublime Tex…
打造自己的JavaScript武器库
作为战斗在业务一线的前端,要想少加班,就要想办法提高工作效率。这里提一个小点,我们在业务开发过程中,经常会重复用到日期格式化、url参数转对象、浏览器类型判断、节流函数等一类函数,这些工具类函数,基本上在每个项目都会用到,为避免不同项目多次复制粘贴的麻烦,我们可以统一封装,发布…
聊聊lodash的debounce实现
前段时间团队内部搞了一个代码训练营,大家组织在一起实现 lodash 的 throttle 和 debounce,实现起来觉得并不麻烦,但是最后和官方的一对比,发现功能的实现上还是有差距的,为了寻找我的问题,把官方源码阅读了一遍,本文是我阅读完成后的一篇总结。 throttle…
另辟蹊径:vue单页面,多路由,前进刷新,后退不刷新
目的:vue-cli构建的vue单页面应用,某些特定的页面,实现前进刷新,后退不刷新,类似app般的用户体验。
注: 此处的刷新特指当进入此页面时,触发ajax请求,向服务器获取数据。不刷新特指当进入此页面时,不触发ajax请求,而是使用之前缓存的数据,以便减少服务器请求,用户…
Mongoose开发实战-高级篇
今天的主题是Mongoose中的聚合函数(Aggregate)。
【译】高阶函数:利用Filter、Map和Reduce来编写更易维护的代码
高阶函数可以帮助你增强你的JavaScript,让你的代码更具有声明性。简单来说,就是简单,简练,可读。 知道什么时候和怎样使用高阶函数是至关重要的。它们可以让你的代码更容易理解和具有更好的可维护性。它们也可以让你很轻松的进行函数间的组合。我们叫它复合函数,不过我不会在这里进行…
CSS 常见布局方式
本文思维导图,欢迎补充 本文首发于我的个人网站:http://cherryblog.site 前言 温馨提示:本文较长,图片较多,本来是想写一篇 CSS 布局方式的,但是奈何 CSS 布局方式种类太多并且实现方法太多,所以本文主要是介绍 flex 布局和 grid 布局,以及 C…
翻译连载 |《你不知道的JS》姊妹篇 | JavaScript 轻量级函数式编程-引言&前言
原文地址:Functional-Light-JS 原文作者:Kyle Simpson - 《You-Dont-Know-JS》作者 译者团队(排名不分先后):阿希、blueken、brucecham、cfanlife、dail、kyoko-df、l3ve、lilins、Litt…
Vue.js 依赖收集
因为对Vue.js很感兴趣,而且平时工作的技术栈也是Vue.js,这几个月花了些时间研究学习了一下Vue.js源码,并做了总结与输出。 文章的原地址:https://github.com/answershut…。 在学习过程中,为Vue加上了中文的注释http…
Async/Await是这样简化JavaScript代码的
在Async/Await替代Promise的6个理由中,我们比较了两种不同的异步编程方法:Async/Await和Promise,这篇博客将通过示例代码介绍Async/Await是如何简化JavaScript代码的。
阿里校招前端笔试题小结
阿里前端笔试题,题目不多,难度也不大,我只记录了两道稍微有点难度的编程题。题目如下: 1.JSON.stringify 的功能是,将一个 JavaScript 字面量对象转化为一个 JSON 格式的字符串。例如 当要转化的对象有“环”存在时(子节点属性赋值了父节点的引用),为了…
使用 webpack 优化资源
在前端应用的优化中,对加载资源的大小控制极其的重要,大多数时候我们能做的是在打包编译的过程对资源进行大小控制、拆分与复用。
本片文章中主要是基于 webpack 打包,以 React、vue 等生态开发的单页面应用来举例说明如何从 webpack 打包的层面去处理资源以及缓存,…
JavaScript 性能优化
前端工程师不但要保证完成界面的规划与开发,并且同时需要保证代码的质量,其中Javscript的运行速度则变得非常重要,此篇文章从工程师的角度入手,结合了开发者工具进行分析, 总结了一些常用的优化手段和法则….
- 小亦俊
Vuejs渡劫系列二:最全的vue-cli项目下的配置简析
Vuejs渡劫系列的第二篇文章,建立在有扎实的Vuejs和webpack基础知识前提下,通过vue-cli脚手架快速搭建项目,该文章会一一梳理项目下的文件配置和用途。
也许是史上最全的前端资源大汇总
最近有很多朋友问有没有相关的书籍推荐,希望能够自学一下前端。这里列出了学习前端所需要的,几乎所有的知识,分享给大家。
移动端网页绝对自适应方案总结
简单总结了实现移动端网页绝对自适应的五种方法;百分比、媒体查询、REM、meta inital-scale、transform scale以及每种方法的优缺点以及可能会遇到的坑。
前端移动端适配总结
Vuejs官方编码指南,快来看看你的代码符合多少最佳实践
This is the official style guide for Vue-specific code. If you use Vue in a project, it’s a great reference to avoid errors, bikeshedding, …
前端表单进阶之路:通过 Vue.js 实现表单可配置化
作为现代网页中最早具有逻辑的部分,表单至今仍在博客类、分类信息以及论坛等以用户发布的信息为核心的网站中,扮演着重要的角色。对这些网站来说,表单意味着信息的初始来源,因此它实际上承载了对于信息处理的第一手逻辑。对于不同的类目,表单的内容显然在业务上需要进行区分,所以,如何实现表单…