jiangtao

Results 26 issues of jiangtao

I think the same problem will accour on Android. I think sometimes the model fields like 'aaa_bbb_ccc' are used in db model. If the field export camel field like aaaBbbCcc,...

在16年年底的时候,同事聊起脚手架。由于公司业务的`多样性`,前端的`灵活性`,让我们不得不思考更通用的脚手架。而不是伴随着前端技术的发展,不断的把时间花在`配置`上。于是[chef-cli](https://github.com/2046/chef-cli)诞生了。 18年年初,把过往一年的东西整理和总结下,重新增强了原有的脚手架[project-next-cli](https://github.com/ijs/project-next-cli), 不单单满足我们团队的需求,也可以满足其他人的需求。 ## project-next-cli 面向的目标用户: - 公司业务杂,但有一定的积累 - 爱折腾的同学和团队 - 借助github大量开发模板开发 ![image](https://github.com/ijs/project-next-cli/raw/master/project-next-cli.gif) ## 发展 前端这几年(13年-15年)处于高速发展,主要表现: 备注:以下发展过程出现,请不要纠结出现顺序 [捂脸] - 库/框架:jQuery, backbone, angular,react,vue - 模块化:commonjs, AMD(CMD), UMD, es module - 任务管理器:npm...

Node
CLI

--- 整理一下之前看《漫画算法》上的一些基础排序算法。部分资料引用wiki自己做过回顾,已经掌握好排序的童鞋,可以忽略。 ## 排序算法 排序算法常见要求: 1. 时间复杂度 (最好和最坏情况,什么时候最好,什么时候最坏) 2. 空间复杂度 (最好和最坏情况,什么时候最好,什么时候最坏) 3. 稳定性 (元素相等的情况下, 排序之后位置是否发生变化) ### [快速排序 o(n*logn)](https://zh.wikipedia.org/wiki/%E5%BF%AB%E9%80%9F%E6%8E%92%E5%BA%8F) 1. 使用条件 普通的数组 2. 交换排序 (不稳定排序) #### 具体实现 1. 挑选基准值:从数列中挑出一个元素,称为“基准”(pivot), 2. 分割:重新排序数列,所有比基准值小的元素摆放在基准前面,所有比基准值大的元素摆在基准后面(与基准值相等的数可以到任何一边)。在这个分割结束之后,对基准值的排序就已经完成,...

algorithm

本人使用Mac整理的一些工具, 由于问的人比较多整理成文档和脚本,方便大家使用。由于本人是工程师, 整理成脚本方便自己。 [脚本地址](https://github.com/jiangtao/mydotfiles) 。下面整理一些较为常用和实用的工具。 ## 开发者 ### 懒人快捷装机子脚本 ```bash curl https://raw.githubusercontent.com/jiangtao/mydotfiles/master/install/boostrap.sh | bash ``` ### 懒人脚本功能列表 #### homebrew安装 ```bash if test ! $(which brew); then echo "Installing homebrew..." ruby...

tool

一书中,提起 let/const 这也是平常工作用的比较多,最近需要给公司做培训. 重新复习下以往的知识点. 本文首发自 [github 个人博客](https://github.com/jiangtao). 转载请注明出处. [来这里讨论](https://github.com/jiangtao/blog/issues/26) ## let/const 再聊 `let/const`之前, 让我们回顾下我们的老朋友 `var`, 他有什么特点或特性 ### var 通过下面的例子, 可以复习下, 关键字`var`声明带来的影响. ```JavaScript console.log(typeof A) // 'function' console.log(a) // undefined console.log(typeof...

ES6
review
javascript

本issue收藏阅读的深度好文集合。如有侵权,请联系删除。 - [JavaScript 浮点数陷阱及解法](https://github.com/camsong/blog/issues/9) - [js在微信、微博、QQ、Safari唤起App的解决方案](https://segmentfault.com/a/1190000012940046) - [理解事件循环二(macrotask和microtask)](https://github.com/ccforward/cc/issues/48) ## 监控 - [如何监控页面崩溃](https://zhuanlan.zhihu.com/p/40273861) - [如何监控页面卡顿](https://zhuanlan.zhihu.com/p/39292837)

前段时间破事群讨论问题,突然提到一个新名词 `puppeteer`,于是好奇查了下干什么的。于是一发不可收拾。 ## 什么是puppeteer 来自官方的介绍: > Puppeteer是一个Node库,提供一套高度封装的API, 通过[DevTools Protocol](https://chromedevtools.github.io/devtools-protocol/)来控制[headless](https://developers.google.com/web/updates/2017/04/headless-chrome) Chrome ## 能干什么 来自官方的描述: > 很多事情可以使用Puppeteer在浏览器中手工完成,下面是一些可以上手的例子: * 生成屏幕快照和pdf * 爬取单页面应用和预渲染内容 * 获取网页内容 * 全自动的form提交, UI测试, 键盘输入等等. * 创建一个最新的,自动的测试环境。直接使用最新版本的chrome,使用最新的JavaScript和浏览器特性,跑你的测试用例 * 捕获你网站的[timeline trace](https://developers.google.com/web/tools/chrome-devtools/evaluate-performance/reference),...

puppeteer
crawler

奇舞周刊推荐了一篇文章[Vue.js 中使用Mixin](http://zcfy.cc/article/using-mixins-in-vue-js-css-tricks-3257.html), 用了vue大半年时间,`mixin`不知道挺惭愧。 奇舞周刊文章中已经介绍了 vue mixin。 - 官方提示谨慎使用 [global mixin](http://vuejs.org/v2/guide/mixins.html#Global-Mixin) - 合理的场景下使用 `mixin` 这里再补充一个 通用业务(埋点) 来描述 mixin的优缺点。 ## 需求 在`SPA`实现埋点需求中比较通用的需求,`进入页面` 和 `离开页面` 需要记录用户在 当前页面的 停留时间。使用`mixin`, 简化代码如下 **mixin.js** ```javascript let cache...

vue

前几天测试的时候遇到个问题,测试的时候出现依赖升级问题,由于测试同学是重新换了个机子,重装了环境,导致下载过程中依赖升级。npm带来便利的时候也带一些问题。如果您觉得比较啰嗦,直接看结果。 我们的vue项目最早依赖2.1.8版本做了组件和项目,为了保证产品的稳定性,决定锁死版本。可以参考[这篇文章](https://zhuanlan.zhihu.com/p/31442269),介绍了框架升级分析的方法。 如果你也是使用vue可能需要注意以下依赖: ```bash "vue-loader": "9.9.5", "vue-style-loader": "1.0.0", "vue": "2.1.8", "vue-template-compiler": "2.1.8" ``` 针对这种依赖升级解决方法: 1. 只发布编译后的文件 这样测试同学就无需关心,升级依赖后再重新打包发布。 优点: 测试同学无需关注依赖安装 缺点: 产出目录充斥着各种版本的文件,增量存储repo越来越大 2. 不通过包管理工具,直接把 node_modules打包,测试环境解压,每次升级依赖重新发布 开发直接把 `node_modules` 打成tar包, 部署的时候解压然后,再通过 `npm run...

npm

## 写在前面 上周参加了珠峰架构成长计划,探讨和学习了前端可以优化的点。本篇幅记录前端优化,如有不对,欢迎指正。本篇幅所有观点经本人整理,参考链接会注明出处,如有侵权,请联系删除。若篇幅太长,考虑分成系列文章。本篇幅更新周期较长,敬请期待。 TLDR;每每说到优化要优化什么?前端要优化什么?后端要优化什么?真的有必要什么都优化吗? 先说前端优化什么? - 从url输入到页面第一屏显示 - 动画 - 用户行为交互响应(包含滚动,传感器,窗口变化等等) 本章节谈谈`首屏优化` 首先分下从**输入URL到页面显示发生了什么**,这样更方便优化每个链路的时间,来缩短总体时间。 - URL是什么 - DNS查询 - HTTP连接 - HTTP报文 - 浏览器渲染 - Web资源 - 缓存 ## URL 为什么要提URL,URL在Web开发中和我们息息相关。什么是URL?...

performance