1
我有這樣的方法:在REST配置不工作三元操作符PARAMS
getFolderDocuments: function(selectedFolder) {
if (!angular.isDefined(selectedFolder.selectedTag)) {
selectedFolder.selectedTag = {};
}
if (!angular.isDefined(selectedFolder.docPage)) {
selectedFolder.docPage = 1;
}
if (!angular.isDefined(selectedFolder.pageLimit)) {
selectedFolder.pageLimit = 10;
}
var sort = "desc";
if (selectedFolder.sortDesc == false) {
sort = "asc";
}
var config = {
'params': {
filters: {
authorised: (angular.isDefined(selectedFolder.authorised) && selectedFolder.authorised ? true : false),
tag: (angular.isDefined(selectedFolder.selectedTag.id) ? selectedFolder.selectedTag.id : 0),
title: (angular.isDefined(selectedFolder.titleFilter) ? selectedFolder.titleFilter : ""),
start: ((angular.isDefined(selectedFolder.startFilter) && selectedFolder.startFilter != null) ? selectedFolder.startFilter.getTime() : 0),
end: ((angular.isDefined(selectedFolder.endFilter) && selectedFolder.endFilter != null) ? selectedFolder.endFilter.getTime() : 0)},
sort: sort,
page: selectedFolder.docPage,
limit: selectedFolder.pageLimit}
};
return $http.get(RESTServer.REST_URL+'/rest/mobile/folder/' + selectedFolder.id + "/document", config);
}
據說這是爲了過濾的給出了具體參數,如標籤,標題,創建日期等文檔的列表...
問題在於,我一直在檢查控制檯中的值,並且三元運算符(例如,tag參數中)始終返回false值,即使定義了評估表達式中的元素。
我該如何解決這個問題? 在此先感謝。
但它在方法參數中定義。只有當參數的selectedTag屬性未定義時,纔會發生這種情況。如果我檢入控制檯輸出,selectedTag.id返回一個值,config.params.filter.tag返回0 – 2015-02-06 19:36:35
你傳遞給你的方法是什麼?你可能會傳遞一個空的對象{},我清楚你的問題。 – myartsev 2015-02-06 19:39:17
我正在向$ scope.selectedFolder屬性中定義的值傳入方法。它永遠不會被定義。這是輸出的一個例子: console.log(selectedFolder.selectedTag.id)= 0,1,2,3 .... etc console.log(config.params.filters.tag)= 0 always – 2015-02-06 19:49:30