Вызов функции React из плагина JqueryJquery

Программирование на jquery
Ответить
Anonymous
 Вызов функции React из плагина Jquery

Сообщение Anonymous »

Я использую плагин jQuery в своем приложении реагирования, и внутри этого плагина jquery происходит нажатие кнопки. Я хочу, чтобы при нажатии этой кнопки мой маршрут реакции менялся. По сути, я хочу перейти на другой экран реакции с помощью этой кнопки jquery. Я пробовал window.location.href, replace, postMessage , но ничего не помогло. Я попытался создать функцию в компоненте React и попытался вызвать ее при нажатии кнопки, но это тоже не сработало:

Код: Выделить всё

useEffect(() => {
// Listen for messages from the iframe
const handleNavigation = (event) => {
console.log('Received message in React:', event);
if (event.data && event.data.type === 'NAVIGATE') {
window.location.href = event.data.path; // Directly navigate to the new URL
}
};

window.addEventListener('message', handleNavigation);

return () => {
window.removeEventListener('message', handleNavigation); // Cleanup listener
};
}, []);
Я вызываю это внутри файла jquery:

Код: Выделить всё

.on('click', function () {
console.log('Button clicked in jQuery!');
// Send a message to React to navigate
window.postMessage({ type: 'NAVIGATE', path: '/port' }, '*');
});
Я попробовал вызвать функцию из компонента React и методы window.location. Однако они не сработали, возможно, из-за ограничений response-router-dom.


Подробнее здесь: https://stackoverflow.com/questions/791 ... ery-plugin
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Jquery»