项目作者: iloveyou11

项目描述 :
实现axios库的开发
高级语言: TypeScript
项目地址: git://github.com/iloveyou11/axios.git
创建时间: 2019-07-27T07:20:25Z
项目社区:https://github.com/iloveyou11/axios

开源协议:MIT License

下载


typescript

  • javascript的增强
  • 未来前端开发的趋势
  • 技术转型的趋势
  • 提升个人能力和竞争力

任务:

  1. typescript常用语法和高级语法
  2. axios库功能实现
    项目脚手架搭建、基础功能实现、异常情况处理、接口扩展、拦截器实现、配置化实现、取消功能实现、更多功能实现

前端工具:

  • jest做单元测试
  • Commitizen提交规范化注释
  • rollupjs打包项目
  • tslint、prettier
  • semantic release管理代码发布

需求分析:

  • 在浏览器端使用 XMLHttpRequest 对象通讯
  • 支持 Promise API
  • 支持请求和响应的拦截器
  • 支持请求数据和响应数据的转换
  • 支持请求的取消
  • JSON 数据的自动转换
  • 客户端防止 XSRF

初始化项目:

TypeScript library starter它是一个开源的 TypeScript 开发基础库的脚手架工具,可以帮助我们快速初始化一个 TypeScript 项目,
使用 TypeScript library starter 创建的项目集成了很多优秀的开源工具:

  • 使用 RollupJS 帮助我们打包。
  • 使用 PrettierTSLint 帮助我们格式化代码以及保证代码风格一致性。
  • 使用 TypeDoc 帮助我们自动生成文档并部署到 GitHub pages。
  • 使用 Jest帮助我们做单元测试。
  • 使用 Commitizen帮助我们生成规范化的提交注释。
  • 使用 Semantic release帮助我们管理版本和发布。
  • 使用 husky帮助我们更简单地使用 git hooks。
  • 使用 Conventional changelog帮助我们通过代码提交信息自动生成 change log。