#javascript #string #react-native #ytdl #tinyurl
Вопрос:
Когда я вставляю адрес, полученный из youtube-dl, в область источника в React-native-Video с помощью componentDidMount, возникает ошибка.
Но если я вручную помещу адрес, полученный из youtube-dl, в переменную и вставлю его в источник, он снова заработает.
componentDidMount(){
const {route, navigation} = this.props;
const {gameVid} = route.params;
if (gameVid != null) {
console.log('Didmount')
return new Promise((resolve, reject) => {
const rendertest = async (gameVid) => {
const format = await ytdl(gameVid, { quality: 'lowestvideo'},(err, info) => {
if(err){
reject(err);
console.log("promise error")
return;
}
});
let test = JSON.stringify(format[0].url);
return test
}
rendertest(gameVid).then(finalValue => {
console.log(typeof(finalValue) ": " finalValue)
//this.state.testvalue = finalValue;
this.setState({
testvalue: finalValue,
done: true
});
})
//resolve(this.state.testvalue)
})
}else{
console.log("notmount")
}
}
Значение, полученное с youtube-dl
Когда я проверяю значение «testvalue» с помощью консоли, я получаю его нормально.
Даже когда я вставляю ссылку в Chrome, она работает нормально, но почему она не работает должным образом из react-native?