所以我的代码是:
export default class MyClass extends Component {
constructor(props) {
super(props);
this.state = {
data: [
{id: 101, name:"One", thevalue:11},
{id: 102, name:"Two", thevalue:22},
{id: 103, name:"three", thevalue:33}
]
}
}
handleOnPress() {
<< HOW DO I CODE THIS ?? >>
I want to increase the number count in thevalue of the pressed item
}
render() {
return(
<FlatList
data = {this.state.data}
renderItem = {
({item}) =>
<TouchableOpacity onPress={this.handleOnPress} >
<Text> {item.name} + {item.thevalue} </Text>
</TouchableOpacity>
}
/>
)
}
}
我希望能够增加仅单击项目的值的计数。所以我应该做一个
setState
对吗?但是我怎么知道我需要在哪个项目上运行它呢?是否需要将单击项目的id
传递给函数?如果是,我该怎么做?
非常感谢。
更新:
handleOnPress(id) {
this.setState({
thevalue: this.state.thevalue+1
});
}
您可以将id
传递到on按
然后更新相应的值
html prettyprint-override">export default class MyClass extends Component {
constructor(props) {
super(props);
this.state = {
data: [
{id: 101, name:"One", thevalue:11},
{id: 102, name:"Two", thevalue:22},
{id: 103, name:"three", thevalue:33}
]
}
}
handleOnPress(id) {
let {data} = this.state;
let idx = data.findIndex(x => x.id == id);
data[idx].thevalue ++;
this.setState({data});
}
render() {
return(
<FlatList
data = {this.state.data}
renderItem = {
({item}) =>
<TouchableOpacity onPress={() => this.handleOnPress(item.id)} >
<Text> {item.name} + {item.thevalue} </Text>
</TouchableOpacity>
}
/>
)
}
}
您必须给它一个参数,以便我们知道要增加的项:
onPress={this.handleOnPress.bind(this, item.id)}
...
handleOnPress(id) {
// increment id
}
或者这更容易理解,但做同样的事情:
onPress={() => this.handleOnPress(item.id)}
我的用户表有以下存储库界面。 我想禁用在用户表中插入新实体,并仅在存在现有条目的情况下使用保存功能来更新现有条目。我如何才能做到这一点?是否有可以传递到存储库界面的选项?或者,当没有匹配的实体时,我应该重写save方法而不执行任何操作吗?
接口说明 更新素材状态 如需调用,请访问 开发者文档 来查看详细的接口使用说明 该接口仅开放给已获取SDK的开发者 API地址 POST /wish3dearth/api/material/v1.0.0/changeMaterialStatus 是否需要登录 是 请求字段说明 参数 类型 请求类型 是否必须 说明 token string header 是 当前登录用户的TOKEN materia
接口说明 更新素材状态 如需调用,请访问 开发者文档 来查看详细的接口使用说明 该接口仅开放给已获取SDK的开发者 如开启https功能,请求地址的协议应改为https,如:https://www.example.com/wish3dearth/api/access/v1.0.0/getLicenseInfo API地址 POST /wish3dearth/api/material/v1.0.0/
我的JButton ActionListener有问题。我在另一个类中定义了一个doTheCleaning()方法,当调用该方法时,会对GUI进行一系列更改。 然后,在另一个类中,我实例化了包含doTheCleaning()方法的类,并用jbutton的actionperformed()方法编写了ActionListener,如下所示: 我知道如何执行其他操作,比如addActionListene
我正在使用硒进行测试。我想点击一个元素。元素非常可点击和可见,但元素的中间点被遮挡,导致错误。 这是一个主视频: 超文本标记语言代码(链接到演示): Python selenium代码: 结果: 这似乎是硒的一个相当可悲的限制。按钮是可点击的,但不是在所有点。我不想摆弄滚动和坐标。 一般来说,关于异常有许多类似的问题,例如: 无法单击元素:元素单击碎片/硒中的异常 硒不能点击元素,因为其他元素掩盖
问题内容: 我正在尝试没有Jquery的情况。我想在单击触发器时显示div。到目前为止,我已经隐藏了这个元素。 HTML .. 单击链接时如何创建显示div的函数?我想避免在链接本身中使用类似的功能。 问题答案: