jQuery template moteurs
Je suis à la recherche d'un moteur de template à utiliser côté client. J'ai essayé quelques un comme jsRepeater et jQuery Templates. Alors qu'ils semblent bien fonctionner dans FireFox, ils ont tous l'air de se décomposer dans IE7 quand il s'agit de rendu des tables HTML.
J'ai aussi pris un coup d'oeil MicrosoftAjaxTemplates.js (à partir de http://www.codeplex.com/aspnet/Release/ProjectReleases.aspx?ReleaseId=16766) mais s'avère que a le même problème.
Des conseils sur d'autres moteurs de template à utiliser?
- Je voulais upvode cette question deux fois 🙂
- Je voudrais vérifier le très beau (mais la pré-bêta) JSViews et JSRender, semblent comme un potentiel officiel de JQuery/UI moteur de template (au moins c'est ce que la feuille de route de le dire)
- JsRender a maintenant une version bêta publique candidat: borismoore.com/2012/03/...
- Je suis en utilisant le Point des modèles de maintenant, de bonnes performances, et la Moustache comme notation
- lien vers le site codeplex bas
Vous devez vous connecter pour publier un commentaire.
Découvrez Rick Strahl post Client de Templating avec jQuery. Il explore jTemplates, mais a ensuite fait un meilleur cas pour John Resig de micro-templating solution, même en l'améliorant certains. De bonnes comparaisons, des lots d'échantillons.
Juste fait quelques recherches sur ce sujet et je vais être en utilisant jquery-tmpl. Pourquoi?
EDIT: Le jQuery équipe ont désapprouvé ce plugin.
Plus ici: http://forum.jquery.com/topic/templating-syntax
jQote: http://aefxx.com/jquery-plugins/jqote/
Quelqu'un a pris Resig micro-templating solution et emballé dans un plugin jQuery.
Je vais utiliser ce jusqu'à ce que Resig communiqués de sa propre (si il sort son propre).
Merci pour l'astuce, ewbi.
jQuery Nano:
jQuery-tmpl sera dans la base jQuery début de jQuery 1.5:
http://blog.jquery.com/2010/10/04/new-official-jquery-plugins-provide-templating-data-linking-and-globalization/
La documentation officielle est ici:
http://api.jquery.com/category/plugins/templates/
EDIT: Il a été laissé de côté de jQuery 1.5 et sera coordonné par le jQuery UI, comme il va être une dépendance de la prochaine jQuery UI Grille.
http://blog.jquery.it/2011/04/16/official-plugins-a-change-in-the-roadmap/
Pas sûr de savoir comment il s'occupe de votre problème spécifique, mais il y a aussi le PURE moteur de template.
script
balises avec l'attributtype
différente detext/javascript
. C'est un "caprice", ce qui pourrait permettre à du code HTML non valide.Cela dépend de comment vous définissez "meilleur", voir mon post ici sur le sujet
Si vous recherchez le plus rapide, voici une belle référence, il semble que DoT victoires, et laisse tout le monde derrière
Si vous êtes à la recherche pour le plus officiel plugin JQuery, voici ce que j'ai trouvé
Partie I: JQuery Templates
La bêta, temporairement-officiel JQuery template de plugin a été ce
http://api.jquery.com/category/plugins/templates/
Mais apparemment, il y a pas longtemps il a été décidé de le maintenir à la Beta...
Partie II: La prochaine étape
La nouvelle feuille de route semblent viser un nouvel ensemble de plugins, JSRender (indépendant de DOM et même JQuery modèle de moteur de rendu) et JSViews qui ont des belles liaison de données et l'observateur /observable modèle de mise en œuvre
Voici le blog sur le thème
http://www.borismoore.com/2011/10/jquery-templates-and-jsviews-roadmap.html
Et voici la dernière source
D'autres ressources
Une belle présentation sur le sujet http://www.slideshare.net/BorisMoore/jsviews-next-generation-jquery-templates
De travail démos: http://borismoore.github.com/jsviews/demos/index.html
Remarque il est même pas encore en version bêta, et seulement un élément de la feuille de route, mais semble être un bon candidat pour devenir un fonctionnaire JQuery/JQueryUI extension pour les modèles de l'INTERFACE et de liaison
http://garann.github.com/template-chooser/ ce lien est vraiment très utile pour la sélection d'un Javascript Modèle de Base.
Seulement d'être l'idiot ^^
http://jsfiddle.net/molokoloco/w8xSx/ 😉
Ce n'est pas jsquery spécifiques, mais voici un JS-modèle basé sur la bibliothèque libéré par google en open source:
http://code.google.com/p/google-jstemplate/
Ceci permet d'utiliser des éléments du DOM comme des modèles, et est ré-entrant (en ce que la sortie d'un modèle de rendu est toujours un modèle qui peut être un nouveau rendu avec un autre modèle de données).
D'autres l'ont fait jquery-tmpl, et j'ai upvoted ceux en répondez. Mais assurez-vous d'avoir un regard sur github fourches.
Il y a des correctifs importants là-bas et fonctionnalités intéressantes aussi.
http://github.com/jquery/jquery-tmpl/network
John Resig en a un qu'il a posté sur son blog. http://ejohn.org/blog/javascript-micro-templating/
Si vous travaillez dans le .NET Framework 2.0/3.5, vous devriez jeter un oeil à JBST mis en place par http://JsonFx.net. Il a un côté client de template solution qui est familier JSP/ASP syntaxe mais est précompilé au moment de la construction, compact cache-mesure des modèles qui n'ont pas besoin d'être analysée au moment de l'exécution. Il fonctionne bien avec jQuery et d'autres bibliothèques JavaScript comme les modèles en eux-mêmes sont compilé en JavaScript.
J'ai été en utilisant jtemplates jquery pluging mais la performance était vraiment mauvais. Je suis passé à trimpath (http://code.google.com/p/trimpath/wiki/JavaScriptTemplates) qui a de bien meilleures performances. Je n'ai pas remarqué de problèmes avec IE7 ou FF.
Pour très léger travail jquery-tmpl est satisfaisant, mais il nécessite, dans certains cas, que les données savez comment le format lui-même (mauvaise chose!).
Si vous êtes à la recherche d'une plus complète de templates du plugin, je vous suggère de Orange-J. Il a été inspiré par Freemarker. Il prend en charge si, sinon, passe en boucle sur les objets & les tableaux, le javascript en ligne, y compris les modèles dans les modèles et a d'excellentes options de mise en forme pour la sortie (maxlen, wordboundary, htmlentities, etc).
Oh, et la syntaxe facile.
Vous pouvez vouloir penser un peu à la façon dont vous voulez la conception de vos modèles.
Un problème avec de nombreux de la liste modèle des solutions (jQote, jquery-tmpl, jTemplates), c'est qu'ils vous demandent d'insérer la non-HTML dans votre code HTML, ce qui peut être une douleur à travailler avec les outils HTML ou dans un processus de développement avec les designers HTML. Personnellement, je n'aime pas le sentir de cette approche, si elle a ses avantages et inconvénients.
Il y a une autre classe de modèle des approches qui utilisent HTML normal, mais vous permettent d'indiquer les liaisons de données avec les attributs de l'élément, les classes CSS, ou externe des mappages.
Knock-out est un bon exemple de cette approche, mais je n'ai pas utilisé moi-même donc je pars à la voix de décider si les autres aiment ou pas. Au moins jusqu'à ce que j'ai le temps de jouer avec elle plus.
PURE répertorié comme une autre réponse est un autre exemple de cette approche.
Pour référence vous pouvez également regarder chain.js, mais il ne semble pas avoir été beaucoup mis à jour depuis sa sortie. Pour plus d'information sur voir http://javascriptly.com/2008/08/a-better-javascript-template-engine/.
Dropbox à l'aide de John Resig du moteur de template sur le site web. Ils ont peu modifié, vous pouvez vérifier dans ce fichier js de dropbox. La recherche dans ce fichier tmpl et vous permettra de code de moteur de template.
Grâce. Espérons qu'il sera utile pour quelqu'un.
Je suis actuellement en utilisant un multi cadre de modèles HTML. Ce cadre rend beaucoup plus facile d'importer basé sur un modèle de données dans votre DOM. Aussi grand modélisation MVC.
http://www.enfusion-framework.org/ (regardez les échantillons!)
Il y a aussi une réécriture de la PURE par beebole - jquery html pur - modèles https://github.com/mpapis/jquery-pure-templates
Il devrait permettre à beaucoup plus d'automatique de rendu le plus souvent en utilisant des sélecteurs jquery, ce qui est plus important, il ne nécessite pas de mettre des choses de fantaisie en HTML.