我正在開發應用程序與AngularJS打印業務表單。 從Google雲端點檢索數據,使用角度平移翻譯並打開打印對話框。AngularJS:如何等待翻譯完成
我的應用程序幾乎可以工作,但有時打印對話框會在翻譯完成之前打開。
MyContoller.js是這樣的。
app.controller('MyController', ['$scope','$location','errorServiceFactory',
function ($scope,$location,errorServiceFactory) {
var param = $location.search();
$scope.list = [];
loadingPanelFadeIn();
gapi.client.myCloudEndpoint.retrieve({
id:param.id,
}).execute(function (resp) {
if(!resp.code){
loadingPanelFadeOut();
$scope.list = resp.items;
$scope.$apply();
window.print();
}else{
errorServiceFactory.errorService(resp);
}
loadingPanelFadeOut();
});
}]);
html like this。
<div class="myclass" ng-repeat="item in list">
<span class="big" style="(snip)" translate="title"> val1 </span>
<span class="big" style="(snip)" translate="to" translate-values="{to: '{{item.field1}}'}"> val2 </span>
:
在大多數情況下,翻譯值顯示在打印預覽,但有時則顯示val1 val2
。
如何解決翻譯完成後打開打印對話框的程序?
也許嘗試https://docs.angularjs.org/api/ng/directive/ngCloak – Phil
我需要看到GAPI。 client.myCloudEndpoint.retrieve(),但是如果它返回一個promise,你可以使用.then() – MingShun
@MingShun,謝謝你的迴應。但是我面臨的是*不*從Google檢索失敗。從Google取回成功,但有時會在翻譯完成之前打開對話框。 –