Just closing the loop here. After struggling with this for quite some time, I found a really elegant solution online:
Define the following function and reactive values variable:
my_data <- reactiveValues()
updateData <- function(LoadString) {
vars <- load(file = LoadString, envir = .GlobalEnv)
for (var in vars)
my_data[[var]] <- get(var, .GlobalEnv)
}
Use SelectInputs to build the path to the RData file that we want to load, call updateData function to load user selected data (for me, I created a "Load" button for the user to click after all of the relevant SelectInputs had been updated).
Hope this can help someone else in the future.
Regards,
Mike