# 偏好设置

命名空间：`core/preferences`。

## 选择器

<!-- START TOKEN(Autogenerated selectors|../../../packages/preferences/src/store/selectors.ts) -->

### get

返回一个布尔值，指示特定作用域中的偏好是否处于活动状态。

_参数_

-   _state_ `StoreState`: 存储状态。
-   _scope_ `string`: 功能的作用域（例如 core/edit-post）。
-   _name_ `string`: 功能的名称。

_返回值_

-   `*`: 该功能是否启用？

<!-- END TOKEN(Autogenerated selectors|../../../packages/preferences/src/store/selectors.ts) -->

## 操作

<!-- START TOKEN(Autogenerated actions|../../../packages/preferences/src/store/actions.ts) -->

### set

返回一个操作对象，用于发出信号，表示应将偏好设置为某个值。

_参数_

-   _scope_ `string`: 偏好作用域（例如 core/edit-post）。
-   _name_ `string`: 偏好名称。
-   _value_ `*`: 要设置的值。

_返回值_

-   `SetAction`: 操作对象。

### setDefaults

返回一个操作对象，用于发出信号，表示应设置偏好默认值。

_参数_

-   _scope_ `string`: 偏好作用域（例如 core/edit-post）。
-   _defaults_ `ScopedDefaults`: 偏好名称到值的键/值映射。

_返回值_

-   `SetDefaultsAction`: 操作对象。

### setPersistenceLayer

设置持久化层。

当设置持久化层时，偏好设置存储将：

-   立即调用 `get` 并将存储状态更新为返回的值。
-   每当偏好值发生变化时，调用 `set` 并传入所有偏好。

理想情况下，应在应用程序生命周期的开始、向偏好设置存储分发任何其他操作之前，分发 `setPersistenceLayer`。

_参数_

-   _persistenceLayer_ `WPPreferencesPersistenceLayer< D >`: 持久化层。

_返回值_

-   `Promise< SetPersistenceLayerAction< D > >`: 操作对象。

### toggle

返回一个操作对象，用于发出信号，表示应切换某个偏好。

_参数_

-   _scope_ `string`: 偏好作用域（例如 core/edit-post）。
-   _name_ `string`: 偏好名称。

<!-- END TOKEN(Autogenerated actions|../../../packages/preferences/src/store/actions.ts) -->