@kookapp/logic-models
v1.0.3
Published
KookApp Logic Models
Keywords
Readme
什么是逻辑模型
这些模块(如SelectModel和Pager)
SelectModel: 封装了选择行为的逻辑,管理选中状态Pager: 封装了分页逻辑,管理分页状态和数据获取 特点:
- 它们都是无UI的纯逻辑封装,因此可以在任何前端框架中使用
- 它们管理特定的数据和状态,抽象了领域中相对复杂的部分
- 它们提供方法来操作这些数据,使业务逻辑更简单和直观
它们确实是"模型",因为:
- 封装了特定领域的数据和行为
- 管理内部状态
- 提供操作这些状态的方法
增加"逻辑"修饰词:
- 区分于传统MVC中的数据模型
- 强调其封装特定业务逻辑的性质
这种模型设计方式符合现代前端架构的最佳实践,将业务逻辑从UI中剥离出来,提高了代码的可维护性和可测试性以及可扩展性。
如何在框架中使用
- 通过搭配的 对应框架的 logicModel-xxx 模块,来使用这些逻辑模型,比如 react 中使用 logicModel-react ,比如:
import { useSelectModel } from '@kookapp/logic-models-react'
const App = () => {
const data = ['选项1', '选项2']
const selectModel = useSelectModel(data)
return (
<div>
<h1>选择模型示例</h1>
<button onClick={() => selectModel.select('选项1')}>选择选项1</button>
<button onClick={() => selectModel.select('选项2')}>选择选项2</button>
<p>当前选择:{selectModel.selected}</p>
</div>
)
}- 或者直接使用 logicModels 中的模型类,来创建和管理模型实例,比如:
import { SelectModel } from '@kookapp/logic-models'
const selectModel = new SelectModel()