我的问题如下: 是否有可能在订阅启动之前等待订阅准备就绪?
祝你好运
bboisvert
angular.module('test').config(['$translateProvider', function ($translateProvider) {
Meteor.subscribe('settings', function(){
test = Settings.findOne({name: "translations"});
$translateProvider.translations('fr-FR', test['fr-FR']);
$translateProvider.translations('en-EN', test['en-EN']);
});
}]);
答案 0 :(得分:0)
在Meteor.subscribe
回调中,您可以执行$rootScope.$broadcast('meteorSubscribed')
监听它并设置一个$scope
变量来说明它已加载。然后,您可以将该变量用于ng-if
或ng-show
示例:
$scope.$on('meteorSubscribed', function(){
$scope.meteorReady = true;
});
模板中的:
<div ng-app="test" ng-controller="RootController" ng-show="meteorReady">
<!-- your app here -->
</div>
您还可以绕过整个事件+控制器设置,只需在$rootScope.meteorReady = true;
回调中设置Meteor.subscribe
即可。真的取决于你的应用程序的设置。