| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> JavaScript知识库 -> 从痛点出发封装项目开发模板 -> 正文阅读 |
|
[JavaScript知识库]从痛点出发封装项目开发模板 |
本文首发于:https://github.com/bigo-frontend/blog/ 欢迎关注、转载。 前言痛点,是指尚未被满足的,而又被广泛渴望的需求,英文名叫pain point。 在做技术规划或者是OKR的时候,往往会问自己一个问题:当前阶段的主要痛点是什么?然后针对痛点,寻求解决方案,最后就能得出较为实际的阶段性目标。 显然,从痛点出发,可以让付出得到的收益更高。 主要存在的问题目前我们团队主要负责内部系统的开发,基本都是管理后台类型的应用。不同系统之间,没有统一的开发模板,甚至技术栈都是不一样的。团队成员间进行支援开发时,往往需要较多的时间熟悉项目才能上手开发。这在一定程度上影响了开发效率和团队的技术沉淀。因此,我们基于react+redux+ts技术栈,封装了统一的项目开发模板,其中,根据平时开发的痛点,集成了较多实用的工具。 服务端接口类型编写使用ts进行开发,人类高质量程序员难免会写很多interface。对于众多的后端接口,每个接口请求参数、响应数据都一个一个去编写,难免有点崩溃。晒干了沉默,悔得很冲动~于是着手去寻找是否有相关的工具可以方便的转换。
我们内部使用了YApi进行接口的管理,故最后选择了
Redux管理说到react,难以避免要谈谈redux。react和redux可以说是一对好基友了,曾被认为是大规模React应用中管理状态的最佳组合。 然而在使用redux的过程中,总有一些痛苦。常见的困扰包括:
redux官方也意识到了这些问题,正所谓前端何苦为难前端,于是推出了工具包redux-toolkit
redux-toolkit通过内置的插件和代码封装,让使用者可以更加方便地使用redux,并且有较好的代码组织。 redux-toolkit包含了如下API:
在具体项目中,如何设置和使用 Redux Toolkit?
更详细的文档>>>传送门 模板生成在实际的开发过程中,我们经常要新建组件、页面或者上面提到的redux slice。这些基本上都有较为固定的结构,比如新建组件都要import react, 然后export 组件。这时候,如何能快速在指定文件目录下生成对应的文件? Plop就要登场了
先看一下动图,了解一下它的效果: Plop提供了一种以一致方式生成代码或任何其他类型的纯文本文件的简单方法。 当需要创建新的组件时,在代码库中找到代表当前“最佳实践”的文件并不总是那么容易。 这就是Plop发挥作用的时候。 有了plop,就有了在开发过程中创建任何给定模式的“最佳实践”方法。通过plop的交互式命令行, 我们就可以轻松生成代码。 这不仅可以免于在代码库中四处寻找要复制的正确文件,而且还将“正确的方式”转变为“最简单的方式”来创建新文件。 配置起来也是比较简单,在你的项目根目录新建
更多配置见文档:传送门 自定义hooks我们都知道,通过React Hooks,可以将组件的逻辑提取到可重用的函数中作为自定义 Hooks。业界也有很多优秀的hook库,比如react-use、ahooks等。 在我们目前的开发模板中,引入了ahooks,其中很多封装好的hook都能让我们开箱即用。当然,如果你需要自己造一些轮子,不妨也借鉴一下其中的实现。 ahooks的 结语古人有云:君子生非异也,善假于物也。 通过集成一些好用的工具,可以让我们在开发过程中大大提高开发效率,把时间专注于具体的业务实现。 我们不再关心api相关代码的生成,只要后端在yapi平台上面录入接口,然后我们在项目中 当然,每个团队都有自己的开发模式,从痛点出发,找到合适自己的才是最好的。 以上,是我们在统一开发模板过程中一些总结。欢迎指正! 欢迎大家留言讨论,祝工作顺利、生活愉快! 我是bigo前端,下期见。 |
|
JavaScript知识库 最新文章 |
ES6的相关知识点 |
react 函数式组件 & react其他一些总结 |
Vue基础超详细 |
前端JS也可以连点成线(Vue中运用 AntVG6) |
Vue事件处理的基本使用 |
Vue后台项目的记录 (一) |
前后端分离vue跨域,devServer配置proxy代理 |
TypeScript |
初识vuex |
vue项目安装包指令收集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 | -2025/1/11 12:49:41- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |