---
title: '不可变类型'
description: 'Yew 的不可变数据结构'
---

## 什么是不可变类型？

这些类型是您可以实例化但永远不会更改值的类型。为了更新值，您必须实例化一个新值。

## 为什么使用不可变类型？

与 React 一样，属性是从祖先传播到子代的。这意味着属性在每个组件更新时必须存在。这就是为什么属性应该——理想情况下——很容易克隆。为了实现这一点，我们通常将事物包装在 `Rc` 中。

不可变类型非常适合保存属性的值，因为它们可以在从组件传递到组件时以很低的成本克隆。

## 进一步阅读

-   [不可变示例](https://github.com/yewstack/yew/tree/master/examples/immutable)
-   [Crate `implicit-clone`](https://docs.rs/implicit-clone/)
