小编aLx*_*450的帖子

控件的嵌套对象中的 argTypes

我正在尝试从旋钮迁移到控件,但在处理嵌套对象时遇到了问题。

举个例子,假设我有一个像这样的对象作为组件的道具......

object : {
 properties: {
   color: 'black',
   size: '1'
 }
}
Run Code Online (Sandbox Code Playgroud)

该项目对故事文件使用 .tsx 扩展名,目前没有 MDX。我尝试访问像这样的嵌套属性来自定义它们的控件...

Card.argTypes = {
 object: {
  properties: {
   color: {control: {type: 'color'}},
   size: {control: {type: 'range', options:{min:1,max:5,step:1}}}
  }
 }
}
Run Code Online (Sandbox Code Playgroud)

但您可能会同意,该控件仍然是一个对象字段,其中包含整个 JSON,这对用户不友好。

有没有办法访问对象以控制其嵌套属性?考虑到项目的规模,我无法四处展平组件中的所有对象及其道具。

谢谢!

storybook

6
推荐指数
1
解决办法
1万
查看次数

从 Jetpack Compose 中的可组合项内访问传感器

我仍在习惯 Jetpack Compose,并且正在尝试获取手机传感器,特别是本例中的加速计,但它可以是任何东西......

在标准活动流程中,我会获取 SensorManager 的实例并从那里开始,但考虑到 Jetpack Compose 所关注的路由,我不知道如何执行此类任务。我们有一个 MainActivity.kt,在其中处理导航。

我真的必须将 SensorManager 实例一直传递到我的可组合项吗?简单地检测设备震动似乎有些过分...如果设备震动,请在可组合项中执行此操作...

从更大的角度来看,这个问题也适用于您在标准生命周期方法中所做的任何事情,我猜......在 Header(...){} 组件中,我无权访问 onCreate 方法。我是否可以理解,如果可组合项需要依赖于生命周期,我必须将所有内容都备份到树上,就像在没有 Redux 的 React 中所做的那样?

Compose 文档特别提到可以为“传感器之类的东西”管理状态,但是如何检索访问这些传感器所需的元素?

我一如既往地感谢您的帮助。

android android-jetpack android-jetpack-compose

6
推荐指数
1
解决办法
2473
查看次数