/ / Mejores prácticas para lidiar con medios estáticos redundantes (js, CSS) como jQuery en una aplicación reutilizable de Django - jquery, python, django

Mejores prácticas para tratar con medios estáticos redundantes (js, CSS) como jQuery en una aplicación reutilizable de Django: jquery, python, django

Al construir una aplicación reutilizable en Django, parapor ejemplo, una aplicación que proporciona un widget especial que se puede usar en cualquier lugar, cuál es la mejor manera de tratar con los archivos estáticos que necesita la aplicación, pero que también podrían usar otras aplicaciones. Un buen ejemplo es jQuery.

Si estoy usando 3 aplicaciones reutilizables y todas usany el paquete jQuery en su directorio estático, al cargar una página que utiliza las 3 aplicaciones, el navegador cargará 3 veces jQuery (probablemente versiones diferentes). Eso puede causar algunos problemas. Por ejemplo, si el último jQuery que se cargará es una versión anterior y una de las otras aplicaciones necesita una versión más reciente, esto puede romper esta otra aplicación. También agrega más tiempo de descarga en la primera carga de página y más solicitudes para cada página. Eso es subóptimo.

Entonces, ¿cómo construir una aplicación reutilizable para evitar este problema?

Respuestas

0 para la respuesta № 1

Hay tres opciones grandes que tienes (y quizás una mejor combinación te sirva):

  • http://api.jquery.com/jQuery.noConflict/ le ayuda a usar jquery sin tener conflictos sobre el control de la variable $.

  • ¿Podría usar la versión CDN de google para incluir un enlace? Creo que este truco se usa bastante. Ver Microsoft CDN para jQuery o Google CDN? . No terminas con varias copias de esa manera.

  • No incluya jquery, pero exija que su código solo pueda usar $. Solo di que eso es un requisito.

Alternativamente tu podría crea una aplicación django básica solo para incluir jquery. django-staticfiles ayuda aquí. Pero es probable que desee utilizar uno de los consejos anteriores.