• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

112
Views
f7DatePicker seleccionando el día anterior dependiendo de la zona horaria

Cargué mi aplicación R Shiny (usando el paquete shinyMobile) a Google Cloud Run usando un Dockerfile, y descubrí que la fecha devuelta por f7DatePicker no coincide con el valor en el widget en sí. Entonces, si pongo 2021-08-02, la fecha real que devuelve (mirando el valor 'input$x') es 2021-08-01, aunque la fecha que se muestra en el widget es 2021-08-02.

SIN EMBARGO, parece que esto solo ocurre para usuarios en zonas horarias particulares. Actualmente me encuentro en Nueva Zelanda y descubro que este problema ocurre con la aplicación móvil para usuarios de Nueva Zelanda; sin embargo, cuando intento ejecutar la aplicación en un servidor en los EE. UU. (es decir, a través de Browserstack), la fecha se devuelve correctamente. PERO cuando ejecuto la aplicación localmente en mi escritorio (en Nueva Zelanda), no tengo este problema. Así que no estoy seguro de si el problema está en el servidor o en el cliente.

Es posible que el problema se deba al horario de verano (ver este enlace ), pero mi servidor local funciona bien, por lo que si este fuera el caso, tendría que ser la interacción entre Cloud Run y el dispositivo móvil de alguna manera.

Aquí está el código que estoy usando para calcular client_time y time_zone_offset (basado en este enlace :)

JavaScript:

 HTML('<input type="text" id="client_time" name="client_time" style="display: none;"> '), HTML('<input type="text" id="client_time_zone_offset" name="client_time_zone_offset" style="display: none;"> '), tags$script(' $(function() { var time_now = new Date() $("input#client_time").val(time_now.getTime()) $("input#client_time_zone_offset").val(time_now.getTimezoneOffset()) });')

Brillante: (en server.r)

 client_time <<- as.numeric(input$client_time) / 1000 # in s time_zone_offset <<- as.numeric(input$client_time_zone_offset) * 60 # s from GMT curr_datetime <<- as_datetime(client_time - time_zone_offset)

¿Alguna idea de cuál podría ser el problema?

Muchas gracias

almost 3 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error