Angular.js with jQuery Mobile



我正在用jQuery Mobile和Angular.js做一个应用程序。因为我们在使用两个库时都有一些问题,所以存在一个适配器来做"这项工作"。

所以我尝试使用routeProvider来路由我的页面。但是我仍然不能用这个来渲染页面。

如果你能给我指路的话。

http://plnkr.co/edit/DNGiT83csWMmfYnHXOop

提前感谢!

我遇到了一个类似的问题,也许我学到的东西可以帮助你。这归结为angular和jquery从一个页面/部分转到另一个页面/部分的方式的差异(路由)。

首先,基础知识:angular通过在视图中插入一大块html来路由,然后在click/action/etc中删除该html并添加新的html块。从本质上讲,你一直都在同一个页面上;只是包含的HTML在变化。相反,可以将jqm视为将所有html加载到同一页面中,并将这些html块作为div。而不是删除html块和替换它们(通过路由),它只是关闭和打开div。(有多页jqm应用程序,但spa确实突出了差异。)

我的建议是选择你真正想要的特性:angular的极简加载(只在你需要的时候),或者jqm的华丽过渡和其他内置特性。如果你有一个庞大的应用,每个页面上都有大量的数据,你可能想要绕过jqm,单独使用angular,看看你能用angular的新animate函数做些什么。这意味着您需要(通过CSS或javascript)构建jqm特性的副本——从我所看到的来看,您可以接近jqm,但它不会像jqm那样令人愉快地简化。

如果jqm的内置特性是你真正想要的,那么跳过使用angular的路由。不管怎样,它只会带来各种各样的并发症。使用jqm的模式设置页面,并且只在处理数据时使用angular。

我发现效果最好的是把它当作一个jqm应用程序,只在你需要它的部分添加angular。毕竟,你不需要在html行中添加ng-app;您可以根据需要将其添加到单个div中。由于jqm最适合作为系统范围的东西,而angular只适用于系统中的各个部分,因此到目前为止,我发现jqm-whole和angular-parts是获得两者优点的最简单方法。

最新更新