如何通过 Context native 传递数组

How to pass a Array through Context native

嗨,亲爱的,谢谢你提出我的问题,我正在尝试使用 react-native 上下文将数组从一个组件传递到另一个组件,下面是我的尝试,但它不适用于数组

import React from 'react';


var context = {
    playlist: null, //like I want to make this value a array
    setPlaylist: (songID: string) => {

    }
}

export var playlistContext = React.createContext(context);

我的App.tsx文件

const [playlist, setPlaylist] = useState<string | null>(null);

<playlistContext.Provider value={{
    playlist,
    setPlaylist: (songID: string) => setPlaylist(songID),
}}>
    <Navigation colorScheme={colorScheme} />
    <StatusBar />
    <PlayerWidget />
</playlistContext.Provider>

这是通过像下面这样改造 playlistContext.tsx 上下文 API 得到的答案:

import React from 'react';


var context = {
    playlist: [],
    setPlaylist: (songID: string[]) => {

    }

}

export var playlistContext = React.createContext(context);

然后我在 App.tsx 中执行了此操作,因此必须在提供程序中使用它

const [playlist, setPlaylist] = useState<string | string[]>([]);
 <playlistContext.Provider value={{
                    playlist,
                    setPlaylist: (songID: string[]) => setPlaylist(songID),

                  }}>

                    <Navigation colorScheme={colorScheme} />
                    <StatusBar />
                    <PlayerWidget />
                  </playlistContext.Provider>