- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在我的应用程序上创建一个 slider ,但每当我开始拖动拇指时,它就会一直闪烁。这是因为我直接使用状态并在它发生变化时存储它。我希望在我移动它时不仅在我停止时更新该值。尝试在状态之外使用 forceUpdate() 的公共(public)变量,但它发生了同样的事情,多次更新滞后很多。
这是我用来创建 slider 的代码
export default class Profile extends Component {
constructor(props) {
super(props)
this.state = { age: 18 }
}
render() {
return (
<View style={styles.container}>
<Slider
style={{ width: 300 }}
step={1}
minimumValue={18}
maximumValue={71}
value={this.state.age}
onValueChange={val => this.setState({ age: val })}
/>
<Text style={styles.welcome}>
{this.state.age}
</Text>
</View>
);
}
}
为了停止闪烁,我使用 onSlidingComplete
参数来更新状态,但这只会在我从组件上松开手指时触发。不是预期的效果。
我应该在这个 setState 上添加去抖动或其他东西吗?
最佳答案
您可以消除或限制 setState
调用。使用 Lodash:
....
onValueChange={_.debounce(this.setAge, 33)} // 30 updates per second
onValueChange={_.debounce(this.setAge, 16)} // 60 updates per second (too much!)
....
setAge(age) {
// Don't forget to bind this function to your component on the Constructor function!
this.setState({ age })
}
关于react-native - React Native Slider - onValueChange 调用次数过多,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54427883/
我正在使用react-native-ui-kitten 中的RkSwitch 组件。该包只是我可以使用的一堆 ui 组件。 开发人员不再支持该组件,并且我的 RkSwitch 组件未按我的预期工作。
我有一个带有从 0 到 100% 的 slider 的 React native 应用程序。每次用户触摸此 slider 时,都会触发 onValueChange,通过套接字将更改后的值发送到服务器。
我正在将 GWT 2.4 与 Java 和 Mozilla FF 7 结合使用。我有一个 TextBox,并且向其中添加了一个 ValueChangeHandler。我注意到,每当我更改 TextBo
我有三个 NumberPickers,我想检测它们的值何时更改。我目前将它们用于其他用途,所以我知道它们有效。当您切换 Id 时,我尝试像 onClickListener 一样进行操作,但 id 在这
你好,我在实现使用 NumberPicker 的 DialogFragment 时遇到了一些问题。我有一些代码,如果用户按下按钮,将提示用户通过 AlertDialog 选择一个数字。我可以很好地显示
我正在使用 Extended WPF Toolkit Community Edition 中的 DateTimePicker WPF 控件库版本 2.5。 我的问题是,当我选择一个日期时,OnValu
Android 数字选择器有:onValueChange(NumberPicker picker, int oldVal, int newVal) 如何通过数据绑定(bind)将这些参数(Number
我正在尝试向用户选择一个选项并更新播放器首选项的场景添加一个下拉列表,并且当应用程序重新启动时,下拉列表中的选定选项应该是用户先前选择的选项。 到目前为止,我提出的代码如下。 public Dropd
我想使用 react-18next 支持本地化。 此组件显示 Picker , 设置 LocalStorage 键(所选语言)并更改应用程序语言。 我注意到 onValueChange方法被调用两次。
如果有人修改开关组件,我会尝试设置一个更改事件。该方法是设计一个包含多个开关的 View ,并允许用户为每个将在 POST api 调用中结束的通知设置状态。此外,我想从 api 调用中加载初始值。
我有一个带有一些硬编码值的选择器。在值更改时,我想使用我的商店中的操作创建者功能使用选定的值更新我的 redux 商店。但是,我遇到了一个问题,即每次选择更改时似乎都没有调用 onValueChang
我在类中有一个实现 ValueChangeHandler 的方法这个类是从 onModuleLoad() 中初始化的。像这样的方法 mainController = new MainControlle
我有几个不同的场景,所有场景都有不同的 JSON 经度和纬度(以及其他数据,但这不是重点)。我解析 JSON ok,并且已经能够获得所需的值。我想做的是将这些值传输到 CodeBehind。到目前为止
我正在尝试将 onValueChanged 事件附加到我的 GUI slider ,但由于某种原因,它给了我一个强制选项来输入一个值(它是“值更改(单个)”部分中的第四个框)。然后它只发送前面提到的值
TextInput 改变时如何调用函数DoMath? state = { foo: 2, bar: 3, Total: 0, } DoMath = () =>{ var foo =
我正在我的应用程序上创建一个 slider ,但每当我开始拖动拇指时,它就会一直闪烁。这是因为我直接使用状态并在它发生变化时存储它。我希望在我移动它时不仅在我停止时更新该值。尝试在状态之外使用 for
我正在我的应用程序上创建一个 slider ,但每当我开始拖动拇指时,它就会一直闪烁。这是因为我直接使用状态并在它发生变化时存储它。我希望在我移动它时不仅在我停止时更新该值。尝试在状态之外使用 for
我的目标是当我在 devExtreme Framework 的日历小部件中单击数字时提醒消息。 它不工作...有人可以帮助我吗? HTML-> JS-> scotchApp.controller(
我正在尝试将 onValueChangeListener 添加到我在 android 4.2.2 中的数字选择器 (np1)。 这是我目前所拥有的 public class main extends
我创建了一个包含两个 NumberPicker View 的对话框。第一个包含组列表,第二个包含所选组中的项目: Group Group Items 1 2:
我是一名优秀的程序员,十分优秀!