Как только несколько файлов (скажем, 6) загружаются через fileInput, я получаю текст "6 файлов" рядом с кнопкой и "Загрузить полную" в строке выполнения. Кроме того, я полагаю, что в случае чрезвычайной ситуации (ошибочная загрузка или smth.) В строке состояния отображается некоторый текст. Пользовательский интерфейс приложения, который я пишу, написан на русском языке, поэтому все ярлыки должны быть на русском языке. Согласно документации, я могу установить только buttonLabel и метки-заполнители в fileInput, ничего о тексте, о котором я упоминал выше. Любые идеи, как я могу его изменить?
Это не полное решение, так как оно не решает проблему, с которой вы сталкиваетесь с несколькими файлами, но это, возможно, начало. Это изменяет текст в строке выполнения:
Вы можете сделать это, используя пользовательскую функцию javascript, хранящуюся в файле, который вы добавляете с tags$script()
. Файл javascript должен находиться в папке www
app.r
www
|__ /fileInput_text.js
app.r
ui <- fluidPage(
tags$script(src="/fileInput_text.js"),
fileInput('uploaded', 'Data Upload')
)
shinyApp(ui = ui, server = function(input, output) {})
Пользовательская функция javascript: /fileInput_text.js
$(document).ready(function(){
$('#uploaded_progress').on("DOMSubtreeModified",function(){
var target = $('#uploaded_progress').children()[0];
if(target.innerHTML === "Upload complete"){
console.log('Change')
target.innerHTML = 'YOUR TEXT HERE';
}
});
});
Эта функция будет искать вам идентификатор fileInput (в этом случае uploaded
) И изменит его с "Upload complete" на то, что вы его установили:
В сообщении Shiny версии 1.0.5 "Загрузка завершена" жестко закодирована в исходных файлах javascript. Вам нужно будет изменить исходные файлы или добавить javascript-хак в приложение для изменения текста. Кроме того, вы можете скрыть сообщение с помощью CSS. Это не то же самое, что перевод, но в некоторых ситуациях он может быть достаточно хорош.
.progress-bar {color: transparent!important}
includeCSS("app.css")
в пользовательский интерфейс, например: # Define UI for data upload app ---- ui <- fluidPage( includeCSS("app.css"), # The rest of your page...
Он работает, делая цвет шрифта прозрачным в индикаторе выполнения. Текст все еще присутствует, но он невидим.
vim/usr/lib64/R/library/shiny/www/shared/shiny.min.js и найдите слово "Загрузка завершена", а затем замените его. внимание кодировка.