Préféré côté client la solution de routage?
Je suis en train de concevoir une page, un navigateur basé sur le web application.
JQuery
est déjà utilisé dans mon application. Je suis actuellement à la planification de l'utilisation de KnockoutJS
pour la liaison de données et l'INTERFACE utilisateur de gestion. Toutefois, j'ai utilisé Backbone.js
dans le passé, et j'ai été assez impressionné par le routage des équipements fournis par le contrôleur de couche.
J'ai aussi regardé dans certains JQuery à base de solution comme pathjs pour le côté client de routage.
Ce serait génial si quelqu'un pouvait offrir des suggestions et des lignes directrices pour le choix d'un bon système de routage.
Je ne suis pas prêt à utiliser Backbone.js
au lieu de KnockoutJS
en raison de l'excellente liaison de données des installations de KnockoutJS
.
- Votre question n'est pas assez claire pour obtenir une réponse (pour moi). Pouvez-vous préciser ce que vous entendez par "bon système de routage'?
- Par le système de routage je voulais dire un flexible côté client solution qui permet de cartographier les urls comme mydomail.com/#!/action/param1/param2 à des actions spécifiques.
- Je suis en supposant que vous avez lu ceci: documentcloud.github.com/backbone/#Controller-routes Pas sûr de ce que vous cherchez si vous prévoyez d'utiliser backbone.js. L'infrastructure de routage est là, à vous de superposition des itinéraires en fonction de votre application.
- PathJS n'est pas une solution basée sur jQuery. Il n'a pas de externam dépendances, et inclut pas d'autres bibliothèques. Il est entièrement autonome, mais fonctionne bien avec tous les autres bibliothèques.
Vous devez vous connecter pour publier un commentaire.
Après un peu d'exploration, j'ai trouvé la solution.
@Eisenhauer épine Dorsale de routage installations sont impressionnantes, mais si je ne suis pas à l'aide de la colonne vertébrale.
Comme je l'ai indiqué dans ma question, je suis déjà à l'aide de KnockoutJS que me fournit un modèle MVVM et donc ce n'est pas vraiment une bonne idée de mettre un supplémentaire MVC mise en œuvre dans la même page.
Pour les personnes à la recherche d'un autonome solution de routage, pathjs est une solution simple et élégante.
Plus flexible, puissant et autonome, la solution de routage est Crossroads.js disponible à http://millermedeiros.github.com/crossroads.js/.
Il est très bien documenté et très puissant,il peut donc être adapté à n'importe quel ensemble d'exigences.
Vous pouvez utiliser l'API de l'Histoire plutôt qu'un hashbang approche?
L'inconvénient est que les anciens navigateurs ne le supportent. Vous pourriez retomber sur un hashbang approche (si vous devez). Je ne sais pas du tout l'existence de cadres que de faire cela. Je préfère tomber sur pas le chargement dynamique de contenu (c'est à dire pleine page est rechargée lorsque l'utilisateur clique sur un lien). L'API de l'histoire va devenir de plus en plus largement pris en charge, de sorte que ce "problème" va se réduire avec le temps.
Voici un exemple de travail avec de la documentation. À partir de la barre d'adresse, ça ressemble à des pages se chargent de "la vieille école" (actualisation de la page entière), mais si vous jetez un oeil à la console de Firebug, Chrome dev tools), vous pouvez voir que le contenu est saisi par une requête AJAX.
Mozilla a quelques docs à ce sujet.
Il y a aussi d'excellentes Directeur
Crossroads.js semble être l'un des meilleurs autour. Un avantage majeur de l'étant, il ne repose pas sur la fenêtre.emplacement pour le routage. Il est léger comme il se colle à faire juste de routage et d'acheminement seul.
D'autres personnes que vous pouvez essayer: finch.js,
davisjs (basé sur pushState de sorte que vous pouvez utiliser les liens existants comme un secours si JS échoue)
Ajoutant une mise à jour: 30 Mars 2015 -
J'avais déménagé à AngularJS en fin d'année dernière. Mains vers le bas le meilleur de formulaire de changement JQ, a beaucoup de modules de routage intégré.