React Canvas 库 — react-konva 入门

react-konva 是一个用于绘制复杂 2D 图形的 React Canvas 库。它为 Konva 框架提供声明式绑定。你可以使用熟悉的 React 组件和数据流。
使用 react-konva 时,你可以像编写 React DOM 一样编写 Canvas 图形。你可以使用 JSX 组件、props、state 和 hooks。
每个 Konva 图形都可以作为 React 组件使用。这些图形包括 Rect、Circle、Line、Text、Image 和 Star,并完整支持事件。
注意:react-konva 只能在浏览器中使用,不支持 React Native。 React Native 没有 DOM,也没有 <canvas> 元素,因此 Konva 没有可以绘制的目标。如果你在 Web 上已经有一个 Konva 编辑器,把它放进 WebView 中运行是可行的方案。如果是新的原生应用,请使用 React Native Skia。
你可以在 konvajs.org 查看数十个交互式示例。Konva 的所有功能都可以通过 react-konva 在 React 中使用。
可以这样理解:Konva 与 react-konva 的关系,类似于 DOM 与 React 的关系。
安装
npm install react-konva konva --save
下面的基本示例创建一个包含多个图形的简单 Canvas:
人们使用 react-konva 构建什么
大多数生产级 Canvas 应用可以分为几类。下面每个示例都可以运行,其中一些还并排展示了原生 JavaScript 和 Vue 版本: