AngularJS côté client liaison de données côté serveur et création de modèles
AngularJS utilise le côté client de la liaison de données (à partir de AngularJS guide pour les Développeurs):
A quelqu'un examiner à l'aide de mélange de de côté de serveur de moteur de template avec AngularJS les deux sens côté client liaison de données. Quelque chose comme ceci:
Je pense à propos de l'utilisation d'AngularJS juste pour les pièces(composants) de la page? Serait-il une bonne idée?
J'aimerais savoir si vous avez déjà eu des expériences avec la même approche et quels étaient les inconvénients et les avantages...
- J'ai été en utilisant AngularJS à l'intérieur de Jade modèles, ce qui a bien fonctionné. Assurez-vous simplement que les deux moteurs de template ne partage pas certaines parties de la syntaxe parce que vous aurez à s'échapper de l'enfer. Je suis allé avec knock-out à la fin, mais les deux fonctionnent très bien avec le Jade, parce que Jade ne pas utiliser d'accolades (si il serait -> échapper à l'enfer).
- Bon point! De AngularJS la version 1.0, vous pouvez modifier interpolation de balisage facilement. Cela peut aider dans une telle situation.
- Je n'ai pas plonger dans AngularJS que beaucoup, mais c'est bon à savoir. Knock-out sur l'autre n'a rien, comme ça, juste attributs (sauf si vous utilisez un externe moteur de template).
- Si vous naviguez sur le site web AngularJS, vous trouverez plusieurs AngularJS applications en cours d'exécution sur une page: angularjs.org. En fonction de ce que vous avez besoin exactement, je pense qu'il devrait très bien fonctionner!
- cette question serait mieux chez programmers.stackexchange.com il n'est pas vraiment le format de ce site.
- Avez-vous des idées pour le faire à l'aide de rasoir asp.net mvc et ng-repeat, par exemple ? Pour une fixation simple-je utiliser <span ng-bind="variable">@Modèle.variable</span> j'ai donc initialiser la première charge avec ViewModel de données et angulaire est capable de faire le changement. Mais Comment le faire avec un ng-repeat à l'aide de ng-ci comprennent par exemple ? Sur mon chemin, il n'est pas possible :/
Vous devez vous connecter pour publier un commentaire.
Angulaire est une INTERFACE utilisateur complet rendu cadre du client. Vous pouvez nourrir les données, et le rendu sera le bon html. Sur son propre Angulaire est un template solution complètement découplé de tout serveur.
Ce que tu essaies de faire, est de nouveau en couple Angulaire de votre application sur votre serveur. Il sera plus de travail, il y aura très peu de bénéfices, et vous allez perdre votre capacité à passer des technologies de serveur mais gardez vos angulaire de l'application intacte.
En essence, vous ne voulez pas faire cela pour la même raison, vous ne voulez pas que votre serveur de rendu JavaScript pour vous... c'est juste moins évident en raison de toutes les années, nous avons rendu tous nos HTML sur le serveur.
Le résultat final est ce qui est important. Que l'INTERFACE fonctionne correctement et que l'application est facile à entretenir. Si vous trouvez que votre solution pour être plus facile à entretenir, alors vous devriez le faire. J'ai du mal à imaginer être beaucoup plus facile à entretenir que le droit de HTML et de JavaScript avec un serveur qui ne fait rien mais l'hôte JSON.
J'ai eu le même dilemme que vous avez, je viens d'un arrière-plan de l'utilisation de SMARTY comme un de côté de serveur de moteur de template et nous avons récemment commencé à utiliser AngularJS.
Je pense que le mélange des deux solution serait appropriée dans le l'essence de la séparation totale. j'.e ne se mélangent pas partie de votre page avec les deux technologies, mais utiliser les deux technologies séparément.
Par exemple, si vous avez une page d'inscription où les utilisateurs interagissent pas avec ça, vous pouvez utiliser côté serveur modèle parfaitement.
Mais si une page impliquant beaucoup de manipulation de l'utilisateur et d'interaction dans ce cas Angulaire est ce que vous devriez utiliser.
Si vous utilisez SPA (single page application) n'utilisez pas de côté de serveur de modèle à tous.
Dans une application cordova nous avons fait récemment, nous avons utilisé une sorte de mix. Fixer le contenu comme des formulaires, des listes, des en-têtes et les menus nous l'avons fait dans l'angle inverse, certaines parties comme le contenu d'un RTE ou changeant souvent de modèles, nous avons ajouté à la directive ngBindHtml. L'idée est d'être flexible dans les pages de contenu de l'application si le client souhaite changer de mise en page, ou voulez mettre actuellement inconnue du contenu.
Mais je dirais: si vous pouvez facilement maintenir l'application (pas de longue déploiement/processus d'approbation de), vous devez le faire à l'angle moyen (mais avec pas de SEO à l'esprit;).