3
我正在對REST服務進行調用,該服務返回true或false。角度承諾區別本地主機vs部署
function topLevelClosed($stateParams) {
var id = $stateParams.id;
return id ? Traject.topLevelClosed({id: id}).$promise : false;
}
var topLevelClosed = {
method: 'GET',
url: trajectURL + ':id/topLevelClosed'
};
topLevelClosed是$ resource方法。這工作完全localhost。 topLevelClosed var是'false',它等於REST調用返回的值。 但是,當部署到Google App Engine時,我會得到結果「包裹在承諾中」,如下圖所示。但是,當我通過瀏覽器窗口調用REST服務時,它應該返回false。
爲什麼不這項工作時,部署?
他正在注入'$ stateParams',所以這很可能是一種解決方法。在解決方法中,不管你是否返回一個承諾,如果它是一個承諾,路由器會爲你解決它,所以你總是會得到解決的承諾,或者在這種情況下,原始的'false ' –
@NexusDuck您可能想詳細說明ui路由器中$ resource方法的結果如何自動解析。我在這裏沒有看到注射。我唯一看到的是帶有參數的函數,我不知道如何調用該函數。 – konqi
那麼,[$ stateParams](https://github.com/angular-ui/ui-router/wiki/URL-Routing#user-content-stateparams-service)是一個ui路由器服務,通常用於解析函數 –