Dois-je utiliser Modernizrjs + YepNopejs + Requirejs dans la même page?
Question
J'utilise RequireJs pour structurer mon code JavaScript.De plus, j'utilise beaucoup de CSS3 et j'utilise "Modernizr w / YepNope" + x nombre de polyfills css3.
Je comprends que "Modernizr w / YepNope" et RequireJs sont tous deux des chargeurs de ressources.Puisqu'ils sont tous les deux des chargeurs de ressources, est-ce une mauvaise idée de les utiliser tous les deux dans le même projet?
Donc, en gros, je demande, est-ce une mauvaise idée à utiliser:
- Require.js
- Modernizr.js avec YepNope.js
Sur la même page?
La solution
Tant que vous ne chargez pas les modules RequireJS via YepNope, vous pouvez utiliser les deux.Sinon, vous pourriez rencontrer ce problème selon le document RequireJS: http://requirejs.org/docs/errors.html # discordance
Et puisque vous chargez des éléments en dehors de RequireJS, c'est-à-dire un polyfill d'API, la seule façon dont vos modules pourraient utiliser ces polyfills serait de faire l'appel initial require()
dans le rappel complete()
de YepNope.Mais à mon humble avis, ça devient un peu maladroit ...
Autres conseils
Résumé: Respond.js, (ce qui est excellent avec jQuery Mobile), est basé sur les requêtes multimédias css3, donc si les polyfills sont tout ce dont vous avez besoin, vous n'avez probablement pas "besoin" de chargeurs de ressources.
Je ne peux pas parler pour YepNopejs, mais comme respond.js est répertorié dans Modernizer, cela semble redondant.
Modernizer, s'il est utilisé, devrait déterminer si respond.js est chargé ou non.
Modernizer chargera conditionnellement les scripts, y compris respond.js, côté client en fonction des fonctionnalités détectées. Scripts pris en charge (qui n'incluent pas actuellement YepNope) sur
https://github.com/Modernizr/Modernizr/wiki/HTML5-Polyfills multi-navigateurs