Скрипт React нарушает связь между элементами R Shiny и UI - PullRequest
0 голосов
/ 25 февраля 2019

Я разрабатываю R-приложение с использованием библиотеки Shiny.Пользовательский интерфейс для приложения создается с помощью React.Для этого я yarn build прикладываю React и копирую содержимое каталога public в директорию www/ приложения Shiny.

Бэкенд (сервер) приложения Shiny должен прослушивать (наблюдать) такие события, какнажатие кнопок производится в пользовательском интерфейсе.Однако я заметил, что загрузка скрипта React нарушает связывание между бэкэндом и пользовательским интерфейсом.Обратите внимание на код - комментируя определенную строку, отвечающую за рендеринг пользовательского интерфейса React, переключает прослушивание щелчков на button#load на внутренней стороне.

server.R

server <- function(input, output, session) {
  observeEvent(input$load, {
    print(10)
  })
}

www/index.html

<!doctype html>
<html lang="en">

<head>
    <script src="./js/jquery-3.3.1.min.js"></script>
    <script src="shared/shiny.js"></script>
    <title>Listening test</title>
</head>

<body>
<button class="action-button" id="load">Print 10</button>
    <div id="root"></div>
    <script src="./static/js/2.210fc6f9.chunk.js"></script>
    <!-- When line below is commented out, listening to clicks works ->
    <script src="./static/js/main.fd6ab614.chunk.js"></script> 
    <script>
        $(document).on('shiny:connected', function (event) {
            // Make sure the Shiny connection is established
            Shiny.bindAll();
        });
    </script>
</body>

</html>

Можно ли вообще сделать пользовательский интерфейс приложения Shiny в React с наблюдением за сохраненными событиями?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...