Referring to YBS and Limey, their approaches were helpful. What I did not understand is that while Shiny UI elements may feel like they behave similarly, their signatures do allow very different things. So even though HTML tags and useShinyjs()
do not actually take up any space and are invisible elements, they are allowed in fluidRow
, yet forbidden in navbarPage
. For now, placing these in a submodule works fine. I have not tried whether this will break things once I add another module on the same hierarchy, but I am guessing wrapping the navbarPage
in a fluidPage
might fix that then.
TL;DR: place any calls to functions necessary for the application to function inside a fluidRow
in any container other than a navbarPage
(and probably tabsetPanel
?).