想要设计开发一个UI组件,我觉得对我来说比较难。
请问应该按照什么步骤来做呢?
这个是我想要封装的一个react UI组件:
因为我看别人封装UI库代码写的很规整,API罗列很清晰。
请问下,应该按照什么大的步骤来封装呢?
比如:
1、[v]确定UI设计图
2、确认事件
3、....
请问能否给一个大致的步骤呢?以及源码里面的代码的排列,比如是否需要: .d.ts 的文件代表API说明。
想要设计开发一个UI组件,我觉得对我来说比较难。
请问应该按照什么步骤来做呢?
这个是我想要封装的一个react UI组件:
因为我看别人封装UI库代码写的很规整,API罗列很清晰。
请问下,应该按照什么大的步骤来封装呢?
比如:
1、[v]确定UI设计图
2、确认事件
3、....
请问能否给一个大致的步骤呢?以及源码里面的代码的排列,比如是否需要: .d.ts 的文件代表API说明。
封装一个React UI组件库时,确实需要遵循一系列系统性的步骤来确保代码的清晰性、可维护性和可扩展性。以下是一个大致的封装步骤指南,以及源码组织的建议:
确定UI设计:
规划组件API:
编写组件逻辑:
实现样式:
单元测试:
文档编写:
.d.ts
文件提供类型定义,增强开发体验。代码审查和迭代:
发布和维护:
目录结构:
src
、dist
(发布文件)、docs
(文档)、tests
(测试)等目录。src
目录下可以按组件类型或功能进行分组。文件命名:
Button.jsx
、InputField.tsx
等。.d.ts
)应与组件的JSX/TSX文件在同一目录下,或使用TypeScript的自动类型推导功能。类型定义:
.d.ts
文件进行扩展定义。样式组织:
.module.css
、.styled.js
等。通过上述步骤和建议,你可以有效地封装React UI组件库,并确保其代码规整、API清晰。
大致说一下个人见解吧,这个东西其实是需要定义规则,而不是楼上提到的什么纯ui、业务组件,以及需求、功能之类的东西,很难表达准确,尽量理解吧。
所有组件的本质都是一样的,就是把A变成B。所以只要遵循以下步骤即可:
关于首次定义时保持最简即可,这一部分后续不可减除
的解释:这样要求是因为此时的目标是明确的,如果这一部分发生变化说明目前要进行的修改不是完善功能,而是在改变功能,那么应该重新问一下自己到底要的是什么。
至于你说的API很清晰,按以上方式去做的话通常都很清晰。因为文档首先描述了B,也就是明确这是一个干什么用的组件,然后就是描述A了。由于A是逐次迭代完善的,所以自然就有层次感 - -!
嗯,从你最后举的例子来说,如果需要确定UI设计图、确认事件等步骤的话,这就是一次交付性开发,写几行注释就好了,没必要折腾。而标准组件一定是预定义外观和事件的,然后通过交付性开发包装成设计图的样子...
8 回答4.8k 阅读✓ 已解决
6 回答3.5k 阅读✓ 已解决
5 回答2.9k 阅读✓ 已解决
6 回答2.4k 阅读
5 回答6.4k 阅读✓ 已解决
4 回答2.3k 阅读✓ 已解决
4 回答2.8k 阅读✓ 已解决
先思考组件是纯ui组件还是附带副作用的业务组件。
如果是ui组件
在规划时要考虑到每个展示模块的扩展性。拿modal组件来举例,完善的组件 对于 header body footer 几个模块一般都会接收
string
,jsx.element
,Component
而你要做的是在组件内部对这几种类型做出判断并渲染出来。然后再思考 都需要哪些props和event。这一步其实好做 无非就是按照设计稿或者其他参考组件来涉及传参,我想提的是 在组件内部要做好对 传入 props event的容错判断。
如果是有副作用的业务组件
第一要考虑 组件内部触发副作用,这个副作用的影响范围。
第二就是上面说的那些