当用jQuerymobile的$.mobile.changePage这个方法时,它只加载下一页的data-role="page"的div,所以为了方便js需要写在一个文件里自己可以构架一下页面结构。上面说的是前提,但是在整合angular时遇到了,在首页初始化完的页面,在加载新的页面时不会把新页面的angular的变量赋值,页面会出现这样{{xxxx.xxx}}的情况。
这时需要重新初始化一下页面的angular的Controller,
下边是代码:
//xxx是ng-controller所属标签的id
var scope = angular.element($('#xxx')).scope();
angular.element($('#xxx')).injector().
invoke(function($rootScope, $compile){
$compile($('#xxx'))(scope);
scope.$digest();
} );
这样就可以把刚刚新加载的页面的重新使用angular了。
这是用到了angular的注入,重新编译html元素。详情可以去angular官网查看
本文详细介绍了在使用jQueryMobile的$.mobile.changePage方法时遇到的页面变量未赋值问题,并提供了通过angular的注入、重新编译html元素的方法来解决此问题的解决方案。
861

被折叠的 条评论
为什么被折叠?



