我试图在用户显示按钮后向他们显示一个模态,其中包含一个下拉选择菜单,他们可以从中选择多个选项。此代码过去曾运行过,但未导致异常。具体来说:
[2022-09-02 22:30:47] [ERROR ] discord.ui.view: Ignoring exception in view <TestButtonView timeout=180.0 children=1> for item <Button style=<ButtonStyle.primary: 1> url=None disabled=False label='Test' emoji=None row=None>
Traceback (most recent call last):
File "C:\Users\adria\PycharmProjects\sblBot\venv\lib\site-packages\discord\ui\view.py", line 425, in _scheduled_task
await item.callback(interaction)
File "C:\Users\adria\PycharmProjects\sblBot\main.py", line 1131, in test_button_callback
await interaction.response.send_modal(TestModal())
File "C:\Users\adria\PycharmProjects\sblBot\venv\lib\site-packages\discord\interactions.py", line 852, in send_modal
await adapter.create_interaction_response(
File "C:\Users\adria\PycharmProjects\sblBot\venv\lib\site-packages\discord\webhook\async_.py", line 220, in request
raise HTTPException(response, data)
discord.errors.HTTPException: 400 Bad Request (error code: 50035): Invalid Form Body
In data.components.0.components.0: Value of field "type" must be one …Run Code Online (Sandbox Code Playgroud) 我有一个Host.js文件,其中包含一个曲目列表,该列表根据 setTrackListener() 函数的定义进行更新。我的问题是,每次调用该函数时,trackList 实际上并未更新。这是打印输出的示例:
Change detected in setTrackListener
LOG Track Name: TEST
LOG Current trackList:
LOG NewArray: TEST
LOG trackList after set:
Run Code Online (Sandbox Code Playgroud)
这是我的代码:
let authToken = "";
let roomID = "";
export default function Host({ navigation }) {
if (roomID == "") {
roomID = createRoom();
}
const [trackList, setTrackList] = useState([]);
if (authToken == "") {
getAuthAccessToken().then((t) => (authToken = t));
}
useEffect(() => {
setTrackListener(roomID, (t) => {
if (t != null) {
console.log("Track Name: " …Run Code Online (Sandbox Code Playgroud) javascript react-native firebase-realtime-database react-hooks