[英]Pass a function inside another function React Native
I ve got the following component which renders an audio player.我有以下呈现音频播放器的组件。 The meditationList function gives me the location of the file that I want to play dynamically, and audio function is the functionality of player.
冥想列表 function 给了我想要动态播放的文件的位置,音频 function 是播放器的功能。
What I want to do is to pass the meditation list return on track player url我想要做的是通过冥想列表返回轨道播放器 url
Thank you谢谢
export default class Player extends React.Component<Props> {
meditationList = () => {
const adress = this.props.route.params;
return JSON.stringify(adress.meditation.meditationPlayerAdress);
};
audio = () => {
TrackPlayer.setupPlayer().then(async () => {
// Adds a track to the queue
await TrackPlayer.add({
id: 'trackId',
url: this.require(meditationList()),
title: 'Track Title',
artist: 'Track Artist',
});
let trackId = await TrackPlayer.getCurrentTrack();
// Starts playing it
TrackPlayer.play();
});
};
pause = () => {
TrackPlayer.pause();
};
stop = () => {
TrackPlayer.stop();
};
render() {
return (
....)}}}
Hi Please change your code as below嗨,请更改您的代码如下
url: require('../../../assets/track.mp3')
to url: this.require(meditationList()),
url: require('../../../assets/track.mp3')
更改为url: this.require(meditationList()),
export default class Player extends React.Component<Props> {
meditationList = () => {
const adress = this.props.route.params;
return JSON.stringify(adress.meditation.meditationPlayerAdress);
};
audio = () => {
TrackPlayer.setupPlayer().then(async () => {
// Adds a track to the queue
await TrackPlayer.add({
id: 'trackId',
url: require(this.meditationList()),
title: 'Track Title',
artist: 'Track Artist',
});
let trackId = await TrackPlayer.getCurrentTrack();
// Starts playing it
TrackPlayer.play();
});
};
pause = () => {
TrackPlayer.pause();
};
stop = () => {
TrackPlayer.stop();
};
render() {
return (
....)}}}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.