为了账号安全,请及时绑定邮箱和手机立即绑定

Angularjs 在页面准备好后回填值不显示

Angularjs 在页面准备好后回填值不显示

茅侃侃 2019-03-06 13:15:15
类似于jQuery的$(document).ready(), 已经在Controller里加入了angular.element(document).ready()方法,不过对于$scope进行属性上的赋值操作后,如$scope.userId = 'aaa';页面不自动把aaa显示出来,要在其他input上做了些操作的时候才显示出来,这是为什么,如何解决它呢?
查看完整描述

1 回答

?
www说

TA贡献1775条经验 获得超8个赞

能提供一下你的初始化部分代码吗?

一般来说,除非想要手动初始化 Angular 应用,否则的话是不需要调用 angular.element(document).ready() 方法的,详情见:Bootstrap。由于不清楚你是否知道这个细节,或者你的确是要手动初始化,所以想看看你的初始化部分好明确你到底是想要做什么。

如果你只是想一个常规的 Angular 应用,别用 angular.element(document).ready() 手动初始化,按照常规的步骤,用 ng-app 就可以了,不用这么麻烦。

顺便一提,angular.element(document) 可以简写为:$document(只要别忘了注入此依赖)。


更新:

不知道你是否尝试过写一个 $service 来达到你的目的,就好像异步去获取后端提供的数据一样,我想也应该是可以。

但如果你一定要使用 angular.element(document).ready 的话,这样写应该可以:

// 假设你有一个 controller 如下:

var MyController($scope) {

    $scope.userId = null;

};


// 初始化的时候为其赋值

angular.element(document).ready(function () {

    var data = // 这里是你取的 sqlite 数据

    var $injector = angular.bootstrap(document, ['myApp']);

    var $controller = $injector.get('$controller');

    var MyController = $controller('MyController');

    MyController.userId = data;

});


查看完整回答
反对 回复 2019-04-12
  • 1 回答
  • 0 关注
  • 270 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号