This is a mobile optimized page that loads fast, if you want to load the real page, click this text.

Проблема Не передаются значения NAPI.ClientEvent.TriggerClientEvent

asdassad322323

Новый участник
5 Май 2022
33
1
10
C#:
NAPI.ClientEvent.TriggerClientEvent(player, "errorShow", "Some err!");

JavaScript:
mp.events.add('errorShow', (error) =>
{
    let error1 = toString(error)
    loginWindow.execute(`errorShow(${error1})`)

})
JavaScript:
const errorShow = (error) => {
    
    document.getElementById("alertText").innerHTML = `${error}`
}
текст не изменяется, помогите
 

XDeveluxe

⚡️BackEnd Developer
Команда форума
Moderator
High developer
BackEnd developer
30 Авг 2021
2,769
1,583
211
28
Полагаю, что ты неправильно описал свою ошибку.
"Some err!" на клиенте ты получишь и проверить это можешь использовав чат при получении данных в errorShow на клиенте:
JavaScript:
mp.gui.chat.push(error);
А вот по части CEF'а и передачи данных в него - это, к сожалению, я не помогу.
Помимо этого так же важная пометка, что NAPI. функции должны вызываться строго из главного потока, в противном случае ты наткнешься на небезопасное использование потоков.
 
Реакции: asdassad322323

mippoosedev

Гуру
BackEnd developer
2 Мар 2021
292
127
100
Ты делаешь execute в браузер, а передаешь своё "Some err!" как переменную.
JavaScript:
mp.events.add('errorShow', (error) =>
{
    let error1 = toString(error)
    loginWindow.execute(`errorShow('${error1}')`)

})
 
Реакции: asdassad322323

XDeveluxe

⚡️BackEnd Developer
Команда форума
Moderator
High developer
BackEnd developer
30 Авг 2021
2,769
1,583
211
28
как сделать иначе?
Он тебе показал, как сделать иначе. Текст для передачи должен находиться в ' '.
Твой вариант:
JavaScript:
loginWindow.execute(`errorShow(${error1})`)
Исправленный вариант:
JavaScript:
loginWindow.execute(`errorShow('${error1}')`)
 
Реакции: asdassad322323

asdassad322323

Новый участник
5 Май 2022
33
1
10
Спасибо уже догнал