在 2 次点击之前状态不会更新并且无法将新状态添加到 url 中反应本机
State is not updating until 2 clicks and cant add new state to url in react native
我在更新状态时遇到问题。我使用设置为 'newurl' 的地址获取 JSON 结果,并在 FlatList 中显示内容。一切正常,我有一个按钮,单击该按钮会更新 'newurl' 状态并重新加载数据。问题是需要点击两次才能更新状态?我试过将 setState 放在不同的 class 中,但不起作用我也无法创建新的 'newurl' 来包含 'newuser'
的状态
点击2次后更新状态和重新加载数据的onclick是:
onPress = () => {
this.setState({
newurl: 'https://www.newtesturl'
}),
fetch(this.state.newurl)
.then(response => response.json())
.then((response)=> {
this.setState({loading: false,list: response.data})
})
}
更新 'newurl' 字符串时出现问题,我似乎无法向其中添加其他数据状态。如果我使用下面的代码,'newurl' 几乎是原样,没有添加 'newuser' 状态?
this.setState({
loading: true,
newurl: 'https://www.example.com/userid={this.state.newuser}'
});
这真的很烦人,因为当我将其添加到如下所示的直接 url 中时它有效吗?
<Image source={{uri: `https://www.example.com/userid={this.state.newuser}`}} />
这就是我设置道具的方式,以防万一? :
type Props = {};
export default class App extends Component<Props> {
constructor(props) {
super(props);
this.state = { list: [], loading: false, newuser: '10101', newurl: '' };
}
抱歉,如果我没有解释得很好,但如果您需要任何澄清,请询问,谢谢
我在更新状态时遇到问题。我使用设置为 'newurl' 的地址获取 JSON 结果,并在 FlatList 中显示内容。一切正常,我有一个按钮,单击该按钮会更新 'newurl' 状态并重新加载数据。问题是需要点击两次才能更新状态?我试过将 setState 放在不同的 class 中,但不起作用我也无法创建新的 'newurl' 来包含 'newuser'
的状态点击2次后更新状态和重新加载数据的onclick是:
onPress = () => {
this.setState({
newurl: 'https://www.newtesturl'
}),
fetch(this.state.newurl)
.then(response => response.json())
.then((response)=> {
this.setState({loading: false,list: response.data})
})
}
更新 'newurl' 字符串时出现问题,我似乎无法向其中添加其他数据状态。如果我使用下面的代码,'newurl' 几乎是原样,没有添加 'newuser' 状态?
this.setState({
loading: true,
newurl: 'https://www.example.com/userid={this.state.newuser}'
});
这真的很烦人,因为当我将其添加到如下所示的直接 url 中时它有效吗?
<Image source={{uri: `https://www.example.com/userid={this.state.newuser}`}} />
这就是我设置道具的方式,以防万一? :
type Props = {};
export default class App extends Component<Props> {
constructor(props) {
super(props);
this.state = { list: [], loading: false, newuser: '10101', newurl: '' };
}
抱歉,如果我没有解释得很好,但如果您需要任何澄清,请询问,谢谢