什么是 nothingleft?
nothingleft 是一个极简的 JavaScript 状态管理库,专为小型项目或学习用途设计。它不依赖任何框架,仅使用原生 JavaScript 实现响应式状态更新。
特点包括:
- 体积小于 1KB(gzip 后)
- 零依赖,纯原生 JS
- 支持订阅/通知机制
- 易于集成到任何项目中
快速开始
通过 CDN 引入 nothingleft:
<script src="https://unpkg.com/nothingleft@latest/dist/nothingleft.min.js"></script>
或使用 npm 安装(如支持模块化):
npm install nothingleft
基本用法
创建一个 store 并监听状态变化:
const store = nothingleft({
count: 0
});
store.subscribe(() => {
console.log('当前计数:', store.state.count);
});
store.setState({ count: 1 }); // 触发更新
交互示例
下面是一个使用 nothingleft 实现的简单计数器:
0
API 参考
nothingleft(initialState):创建一个 store 实例。store.state:获取当前状态(只读)。store.setState(newState):更新状态并通知所有订阅者。store.subscribe(listener):注册监听函数,返回取消订阅函数。
适用场景
nothingleft 适用于以下情况:
- 小型静态网站需要简单状态同步
- 教学演示响应式原理
- 不想引入大型状态库(如 Redux、Vuex)的轻量项目
- 快速原型开发