首页 > 解决方案 > 如何获取对象(歌曲)数组以存储在变量中

问题描述

我希望数据中的 url 传入音乐播放器来播放歌曲。我无法在歌曲 [] 状态下设置状态 url。

componentWillMount(){
      var ur_i = this.props.navigation.getParam('uri');
   console.log(JSON.stringify(ur_i));

       this.setState(this.state.song=ur_i)
       alert(JSON.stringify(this.state.song.url))
    }

这是来自服务器并存储在 ur_i 中的数据

我希望将歌曲 URL 存储在歌曲 [] 中。

标签: react-native

解决方案


setState使用方法无效。

setState()异步操作。

设置状态(更新器 [,回调])

的回调函数setState(updater[, callback])已执行并可重新渲染。

例子

timerAction = () => {
    const { time } = this.state;
    console.log(time);
this.setState({
      time: time - 1
    })
    console.log(time)
  };

用法

componentDidMount(){
      var ur_i = this.props.navigation.getParam('uri');
   console.log(JSON.stringify(ur_i));

       this.setState(song:ur_i[0].song,() => alert(JSON.stringify(ur_i[0].song)))

    }

推荐阅读