μ μΈλΆ λ°μ΄ν°λ‘ ν μ΄λΈμ λ€μ λ‘λνλ tableParams.reload()(λ° params.total(filteredData.length))λ₯Ό μ¬μ©νκ³ μμ§λ§ "select" λ° "select-multiple" νν°μ μ ν νλͺ©μ λ³κ²½λμ§ μμ΅λλ€. tableParams.reload()λ "filter-data" ν¨μλ₯Ό λ€μ νΈμΆν΄μΌ ν©λλ€. μ΄κ²μ λ¬μ±νλ λ€λ₯Έ λ°©λ²μ΄ μμ΅λκΉ?
μλ
νμΈμ. μ°μ - νλ‘μ νΈμ κ°μ¬λ립λλ€.
λλ κ°μ λ¬Έμ λ₯Ό κ°μ§κ³ μλ€. μλ²μμ κ°μ Έμ¨ λ°μ΄ν°λ‘ νν°λ₯Ό μ
λ°μ΄νΈν΄μΌ νμ§λ§ νν° λ°μ΄ν° κΈ°λ₯μ νΈλ¦¬κ±°νλ λ°©λ²μ λͺ¨λ¦
λλ€.
getData ν¨μ λ΄μμ λ°μ΄ν°λ₯Ό μ μΈνλ©΄ ν
μ΄λΈμ μ
λ°μ΄νΈνλ κ²μΌλ‘ 보μ
λλ€.
κ·Έλμ..... getData: function($defer, params){
var λ°μ΄ν° = $scope.yourdata;
var μ£Όλ¬Έ λ°μ΄ν° = ...........................
}
λ΄ λ°μ΄ν°κ° DOMμ μ±κ³΅μ μΌλ‘ λ‘λλμμ§λ§ μλ²μμ λ°μ΄ν°λ₯Ό κ°μ Έμ€κ³ tableParams.reload()λ‘ ng-tableμ μλ‘ κ³ μΉκ³ μ ν λ κ²°κ³Όλ₯Ό λ°μνμ§ μμ§λ§ μ λ ¬ λλ νμ΄μ§μ ν΄λ¦νλ©΄ κ²°κ³Όκ° λ°μλ©λλ€.
μ΄κ²μ μ΄λ€ λ¬Έμ κ° λ μ μμ΅λκΉ?
@basilcronusκ° μ μν κ²μ λ λ²μ§Έλ‘ λ§νκ³ μΆμ΅λλ€. μ΄κ²μ μ μκ²λ
@developersatishμ λμΌν λ¬Έμ κ° μμμ΅λλ€.
μ΄ λ¬Έμ κ° ν΄κ²°λ λκΉμ§ κΈ°λ€λ¦¬μμμ€.
μλ νμΈμ μ¬λ¬λΆ. λλ μ΅κ·Όμ ngTableμ μ¬μ©νκΈ° μμνμ΅λλ€. νΉν μ€μ²©λ ngTableκ³Ό λΆλͺ¨ λ°μ΄ν°μ λ³λλ‘ λ°μ΄ν°λ₯Ό λ€μ λ‘λν λ λΉμ·ν λ¬Έμ κ° μμ΅λλ€. λ€μμ λΉ λ₯Έ μμ΄λμ΄μ λλ€.
μμ 컨νΈλ‘€λ¬:
var λΆλͺ¨ λ°μ΄ν° = [...];
$scope.details = -1
$scope.showDetails = ν¨μ(id) {
$scope.details = μμ΄λ;
};
// ngTable ////////
$scope.tableParams = μλ‘μ΄ ngTableParams({
page: 1, // 첫 νμ΄μ§ νμ
count: 10, // νμ΄μ§λΉ μΉ΄μ΄νΈ
μ λ ¬: {
id: 'asc' // μ΄κΈ° μ λ ¬
}
}, {
total: parentData.length, // λ°μ΄ν° κΈΈμ΄
getData: ν¨μ($μ§μ°, 맀κ°λ³μ) {
// λ΄μ₯ κ°λ νν° μ¬μ©
var μ£Όλ¬Έ λ°μ΄ν° = params.sorting() ?
$filter('orderBy')(parentData, params.orderBy()) :
λΆλͺ¨ λ°μ΄ν°;
$defer.resolve(orderedData.slice((params.page() - 1) * params.count(), params.page() * params.count()));
}
});
htmlμμ ng-clickμ μ¬μ©νμ¬ μ¬κΈ°μ IDλ₯Ό 보λ΄κ³ μΈλΆ μ 보 λ²μλ₯Ό λ³κ²½ν©λλ€.
νμ 컨νΈλ‘€λ¬(첫 λ²μ§Έ 컨νΈλ‘€λ¬μ κ΄λ ¨λ 보쑰 ν μ΄λΈ):
var μμ λ°μ΄ν° = [...];
$scope.$parent.$watch('μΈλΆ μ 보', ν¨μ() {
console.log("μ¬κΈ°μ λ§λ€μμ΅λλ€.");
$scope.tableParams2.reload();
});
// μμ ngTable ////////
$scope.tableParams2 = μλ‘μ΄ ngTableParams({
page: 1, // 첫 νμ΄μ§ νμ
count: 10, // νμ΄μ§λΉ μΉ΄μ΄νΈ
μ λ ¬: {
id: 'asc' // μ΄κΈ° μ λ ¬
}
}, {
total: childData.length, // λ°μ΄ν° κΈΈμ΄
getData: ν¨μ($μ§μ°, 맀κ°λ³μ) {
// λ΄μ₯ κ°λ νν° μ¬μ©
var μ£Όλ¬Έ λ°μ΄ν° = params.sorting() ?
$filter('orderBy')(childData, params.orderBy()) :
μμ λ°μ΄ν°;
$defer.resolve(orderedData.slice((params.page() - 1) * params.count(), params.page() * params.count()));
},
$scope: { $data: {} }
});
ν΄λ¦νλ©΄ λ³κ²½ μ¬νμ λ³Ό μ μμ§λ§ μμ ν μ΄λΈμ΄ μ λ°μ΄νΈλμ§ μμ΅λλ€. μ΄κ²μ΄ λμμ΄λλμ§ νμ€νμ§ μμ§λ§ κ΄λ ¨μ΄ μλ€κ³ μκ°ν©λλ€.
μλ
,
@developersatishμ λμΌν λ¬Έμ κ° μμ΅λλ€. ν
μ΄λΈ λ°μ΄ν°λ ν
μ΄λΈμ μ λ ¬νκ±°λ νν°λ§ν νμλ§ μ
λ°μ΄νΈλ©λλ€. μ΄ λ¬Έμ μ λν ν΄κ²°μ±
μ΄ μμ΅λκΉ?
λΉμ·ν λ¬Έμ κ° μμ΅λλ€.
ν΄λ¦ μ΄λ²€νΈμμ μλ²μμ λ°μ΄ν° κ²μμ μμν©λλ€(λ€μ€ νΈμΆ).
κ·Έλμ μ λ for 루νκ° μκ³ κ±°κΈ°μ GET μμ²μ΄ μκ³ ν
μ΄λΈ λΉλκΈ°μ νλ‘―νλ €λ λ²μ λ³μλ‘ λ°νλλ κ²°κ³Όλ₯Ό μ μ₯ν©λλ€.
κ·Έλ¬λ ν΄λ¦νλ©΄ λ€μκ³Ό κ°μ΄ λ΄ ν μ΄λΈμ μΈμ€ν΄μ€νν©λλ€.
`$scope.tableParams = new ngTableParams({
page: 1, // show first page
count: 10, // count per page
sorting: {
Country: 'asc' // initial sorting
}
}, {
total: $scope.continentTableData.length, // length of data
getData: function($defer, params) {
for (var i = 0; i < numberOfCountries; i++) {
try {
var country = $("path[class*=" + $scope.currentContinentCountries[i].toUpperCase() + "]")[0].__data__.properties.name;
MapService.getInfographicsData(2013, country, function(infrographicsData) {
counter++;
// debugger;
var cpi = infrographicsData[0].data.CPI;
var trace = infrographicsData[1].data;
var countryName;
if (cpi == null) {
countryName = trace.Ref_Country;
} else {
countryName = cpi.Country;
}
var joinedData = {
Country: countryName,
Cpi: cpi,
Trace: trace
}
$scope.continentData.push(joinedData);
$scope.continentTableData = $scope.continentData;
// if (counter==numberOfCountries-1) {
// console.log("tier");
$timeout(function() {
// update table params
params.total($scope.continentTableData.length);
// set new data
console.log("new data set");
$defer.resolve($scope.continentTableData);
}, 1500);
// };
});
} catch (e) {
// console.log(e);
continue;
}
}
// $scope.$apply();
}
});`
ajaxλ₯Ό μ¬μ©νλ ngTable μμ μμμ κ°μ΄. κ·Έλ¬λ ν μ΄λΈμ μ무 κ²λ νμλμ§ μμ΅λλ€(getDataκ° νΈμΆλμ§ μμ).
"μλ‘ κ³ μΉ¨" tableParamsλ₯Ό ν΄λ¦νλ©΄ κ° νλͺ©μ΄ 볡μ λ κ²μ μ μΈνκ³ ν μ΄λΈμ΄ λͺ¨λ νλͺ©μ λ‘λνκΈ° μμν©λλ€.
μ΄λ€ μμ΄λμ΄λΌλ?
@developersatish νμ΄μ§ λ§€κΉ λ²νΌμ 첨λΆλ κΈ°λ₯μ 볡μ¬νμ¬ μλ²μμ μ λ°μ΄ν°λ₯Ό λ°μν μ μμμ΅λλ€.
$scope.tableParams.count(1);
λλ μ΄κ²μ λ΄ μμ²μ μ½λ°±μ λ£μμ΅λλ€.
myRequest().then(function(response) {
$scope.data = response;
$scope.tableParams.total($scope.data.length);
$scope.tableParams.count(1);
});
λ΄ μλμ κ²μλ¬Όμμμ΄ 1
μμ $scope.tableParams.count(1)
μ¬μ€μ μ€μ ν κ°μ ν¬ν¨νλ λ³μλ‘ κ΅μ²΄ν΄μΌν©λλ€ count
μμ ngTableParams
.
μμ
μμ λ http://embed.plnkr.co/harWG3J6OlNHzbOu0e6S/preview λ₯Ό μ°Έμ‘°νμμμ€.
μ΄κ²μ΄ μ΄ λ¬Έμ μ λν μ΅μμ κ²μ κ²°κ³Όμ΄λ―λ‘ λ΄ μ루μ μ λν΄ μνν μμ μ ν¬ν¨νκ² μ΅λλ€. λλ λ¨μν filter-data ν¨μμμ defer.resolveμ λν μΈμλ‘ μ¬μ©λλ {id,title} κ°μ²΄μ λ°°μ΄μ $scopeμ μ μ₯νμ΅λλ€. (μ²μμλ λΉμ΄ μμ μ μμ΅λλ€.) κ·Έλ° λ€μ μΈμ λ μ§ ν΄λΉ λ°°μ΄μ μ λ°μ΄νΈν μ μμΌλ©° λ³κ²½ μ¬νμ νν° μ νμ λ°μλ©λλ€. κ·Έλμ λ΄ ajax νΈμΆμ΄ μλ² μλ΅μ κ°μ Έμ¬ λ μ λ°μ΄νΈν©λλ€.
λν μ κ²½μ°μλ μ¬μ©μκ° κ²μ λ²μλ₯Ό νμ₯ν¨μ λ°λΌ ν μ΄λΈ λ°μ΄ν° μΈνΈκ° νμ₯λ©λλ€(μ¦κ°λ¨). μ΄λ κ² νλ €λ©΄ μ ν νν°λ μμ (diff μ μ©)ν΄μΌ ν©λλ€.
λλ κ·Έκ²μ μλνμ§λ§ μλνμ§ μμ΅λλ€. μμ μμ λ₯Ό λΆμ¬λ£μ μ μμ΅λκΉ?
μλ€ μ,
@almaplayera μ κ°μ λ¬Έμ κ° μμ΅λλ€. λ€μκ³Ό κ°μ μλ리μ€κ° μμ΅λλ€.
νμ¬ λ°μ΄ν°λ₯Ό νν°λ§ λ°μ΄ν°λ‘ κ°μ Έμ€κΈ° μν΄ μ΄ μμ μ μννκ³ μμ΅λλ€.
κ·Έ ν λ΄ λ³΄κΈ°μ νν° λ°μ΄ν°μμ getCompany λ©μλλ₯Ό νΈμΆνμ΅λλ€.
λꡬλ μ§ λ΄ νν° λ°μ΄ν°λ₯Ό μλΉμ€μ μ΅μ λ°μ΄ν°λ‘ μ λ°μ΄νΈνλ μ루μ μ μ μνκ±°λ μ μ¬ν μ¬μ© μ¬λ‘μ λν λͺ κ°μ§ μλ₯Ό μ 곡ν μ μμ΅λκΉ?
@esvit : https://github.com/esvit μμ μ μν @israelidanny μ κ°μ 보기μμ λμΌν λ³μλ₯Ό νν° λ°μ΄ν°μ μ λ¬νλ €κ³ μλνμ΅λλ€. /ng-table/pull/342 νμ§λ§ κ·Έκ²λ μλνμ§ μμ΅λλ€. :(
μΆμ : λλ tableParams.reload(); μΆκ° λ° νΈμ§ ν.
μ무κ²λ 컀λ°νκΈ° μ μ ng ν μ΄λΈμμ μ ννκΈ° λλ¬Έμ λ μ΄μ μ½λκ° μμ΅λλ€. κ·Έλ¬λ λ©λͺ¨λ¦¬μμ μ΄λ:
νν° ν¨μ(getCompany ν¨μ)λ ν μ΄λΈ μ΄κΈ°νμμ ν λ²λ§ νΈμΆλ©λλ€. λ°λΌμ λ μ½λ λ³κ²½ μ¬νμ΄ μμ λλ§λ€ νμΈλ λ°μ΄ν° λ°°μ΄μ λ³κ²½ μ¬νμ μ μ©ν΄μΌ νλ©° angularλ μ΄λ¬ν λ³κ²½ μ¬νμ domμ μ μ©ν©λλ€.
$scope.company_filter = [];
$scope.getCompanyFilter = function(data) {
var def = $q.defer();
companyService.getAll().success(function(response) {
$scope.updateCompanyFilter(response.data);
def.resolve($scope.company_filter);
});
return def;
};
$scope.updateCompanyFilter = function(data) {
$scope.company_filter.length = 0;
for (i in data) {
$scope.company_filter.push({
'id': data[i].id,
'title': data[i].name
});
}
};
// Then wherever you refresh your table data, just call updateCompanyFilter(data).
// Or you could micro manage the filter array when you do adds/deletes instead of reseeding it every time.
<td ... filter-data="getCompanyFilter($column)" >
λ€μ λ§νμ§λ§, λλ λͺ κ°μμ΄ μ§λ¬κΈ° λλ¬Έμ ν릴 μ μμ΅λλ€.
μ΄ λ¬Έμ λ μ΅μ λ²μ μ ng-tableμμ μμ λμμ΅λκΉ?
λκ΅°κ° μμ μ½λλ₯Ό μ 곡ν μ μμ΅λκΉ?
κ·Έλ μ§ μλ€κ³ μκ°ν©λλ€.
μ΄μ λ§λ€κΈ° μ΄λ ΅μ§ μμ κ² κ°μμ.
controller.loadFilterData ν¨μμμ νΈμΆν μ μμ΅λλ€.
ν
μ΄λΈ 맀κ°λ³μ. κ·Έλ¬λ©΄ λͺ©λ‘μ΄ λ³κ²½λ λ μ΄κ²μ νΈμΆν μ μμ΅λλ€.
λμ μ΄ν리μΌμ΄μ
.
μ¨
2015λ
6μ 19μΌ κΈμμΌ μ€μ 6:59, rachithaShetty [email protected]
μΌλ€:
μ΄ λ¬Έμ λ μ΅μ λ²μ μ ng-tableμμ μμ λμμ΅λκΉ?
β
μ΄ μ΄λ©μΌμ μ§μ λ΅μ₯νκ±°λ GitHubμμ νμΈνμΈμ.
https://github.com/esvit/ng-table/issues/186#issuecomment -113384084.
:+1: @kyleboyle : κ·νμ μ루μ μ μΉκ΅¬λ₯Ό ν¨κ³Όμ μ΄μμ΅λλ€..! λλ¨νλ€...! μ λ§ κ°μ¬ν©λλ€.
μ΄ λ¬Έμ μ λν ν΄κ²° λ°©λ²(Pull request 403: https://github.com/esvit/ng-table/pull/403)μ΄ v0.4.2μμ λ³ν©λμμ§λ§ λ³κ²½ μ¬νμ μ΄νλ‘ λλλ €μ‘μ΅λλ€.
ng-table.js λ³κ²½μ 549νμμ
$scope.$watch('params.$params', function(newParams, oldParams) {
μκ²
$scope.$watch('[params.$params, params.data]', function(newParams, oldParams) {
μ΄λ κ² νλ©΄ λ°μ΄ν°κ° μ
λ°μ΄νΈλλ λ¬Έμ κ° ν΄κ²°λμμ§λ§ λ³κ²½ μ¬νμ λ λλ§νκΈ° μν΄ ν
μ΄λΈμ΄ μλ‘ κ³ μ³μ§μ§ μμμ΅λλ€.
κ·Έκ²μμ΄ λ²κ·Έκ°μ΄μ μ¬ λμ
λ κ²μΌλ‘ 보μΈλ€ μ»€λ° : https://github.com/esvit/ng-table/commit/9189e987fba90b07ffc6b17c982961ad65edf725#diff -6aca4bc06732c0635eb9860dc6cd040fL490
λΆννλ $watch
' params.data
λ νΉμ μν©μμ λ¬Έμ λ₯Ό μΌμΌν΅λλ€.
params.data
λ΄μ μμκ° μν μ°Έμ‘°λ₯Ό ν¬ν¨νλ 볡μ‘ν κ²½μ° angular.copy
κ° λ₯ ν΄λ‘ μ μμ±ν λ $watch
'ing _by value_ μ€ν μ€λ²νλ‘ μμΈκ° λ°μν©λλ€.
angular.copy
μ μ λ²μ μ΄ μ΄ νΉμ λ¬Έμ λ₯Ό ν΄κ²°νλ€κ³ μκ°νμ§λ§ μ±λ₯μμ μ΄μ λ‘ params.data
_κ°μΌλ‘_ 보λ κ²μ μ¬μ ν ββλμ μκ°μ
λλ€.
@kyleboyle μ΄ μ½λλ μλ²½νκ² μλν©λλ€! κ°μ¬ ν΄μ! κ·Έλ¦¬κ³ inArray ν¨μλ₯Ό μΆκ°νλ©΄ μ€λ³΅μ κ±Έλ¬λΌ μ μμ΅λλ€.
$scope.manufacturer_filter = [];
$scope.getManufactFilter = function(column){
var def = $q.defer();
ResourseAPI.query(function(data){
$scope.updateManufactFilter(data.devices);
def.resolve($scope.manufacturer_filter);
});
return def;
};
$scope.updateManufactFilter= function(data) {
var arr = [];
angular.forEach(data, function (item) {
if (inArray(item.manufacturer, arr) === -1) {
arr.push(item.manufacturer);
$scope.manufacturer_filter.push({
'id': item.manufacturer,
'title': item.manufacturer
});
}
});
};
var inArray = Array.prototype.indexOf ?
function (val, arr) {
return arr.indexOf(val);
} :
function (val, arr) {
var i = arr.length;
while (i--) {
if (arr[i] === val) return i;
}
return -1;
};
@kyleboyle κ·νμ μ루μ
μ νλ₯ν©λλ€.
ng-table-dynamicμ μ¬μ©νμ¬ μ μ¬ν κ²μ ꡬνν μ μλμ§ μλ μ¬λμ΄ μμ΅λκΉ?
λλ μλ° μ€ν¬λ¦½νΈλ‘ μ΄μ λμ μΌλ‘λ‘λν©λλ€.
μμ:
var column = {
title: 'Example',
sortable: 'example',
filter: 'example',
filterData: .....,
show: true,
field: 'example'
};
filterData μμ±μ 무μμΌλ‘ μ€μ ν΄μΌ ν©λκΉ? μλλ©΄ λ°μ΄ν° νν°λ₯Ό λ€μ λ‘λνλ λ€λ₯Έ λ°©λ²μ΄ μμ΅λκΉ?
μ ν νν°κ° λ°μ΄ν° μμ€λ‘ μ¬μ©ν λ°°μ΄μ μ§μ νλ λ€μν λ°©λ²μ΄ μμ΅λλ€. μ΄λ¬ν κ° λ°©λ²μ ng-table
λ° ng-table-dynamic
λͺ¨λμ μ μ©λ©λλ€.
λ€μ μ½λ μνμ΄ λ¬Έμ λ₯Ό νμ νλ λ° λμμ΄ λ κΉμ?
μ’μ μνμ΄μ§λ§ λ΄ λ¬Έμ μ λν μ루μ μ μ°Ύμ μ μμ΅λλ€. λͺ¨λ μμμ λ°μ΄ν°λ ν λ²λ§ λ‘λλμ§λ§(λκΈ°ν λλ λΉλκΈ°ν) λ€μ λ‘λλμ§λ μμ΅λλ€.
λ΄κ° μ»λ κ²μ μλ λ€μκ³Ό κ°μ΅λλ€.
λ κ°μ μ΄μ΄ μμ΅λλ€. κ΅κ°μ λμ κ°κ°μ νν°κ° μμ΅λλ€.
κ·Έλμ:
μ΄ν΄λλ€? λ΄ μμ΄μ λν΄ λ―Έμ ν΄μ.
λ΅μ₯μ λ³΄λ΄ μ£Όμ μ κ°μ¬ν©λλ€.
@kyleboyle μ΄λ¬ν μ루μ μ€ μ΄λ κ²λ λλ₯Ό μν΄ μλνμ§ μμΌλ©°(μ λ νν°λ§μ μννμ§λ μμ΅λλ€) κΈ°λ³Έ λ°μ΄ν°κ° μ λ°μ΄νΈλ λ ν μ΄λΈμ΄ μ λ°μ΄νΈλμ§ μλ μ΄μ ν μ½λ νμ§μ μ§νλ‘ κ°μ£Όνκ³ μμ΅λλ€. μ΄λ€ Angular ν μ΄λΈ μ루μ μΌλ‘ μ ννμ ¨μ΅λκΉ?
@BartoGabriel λλ λΉμ μ΄νλ €λ μΌμ΄ κ°λ₯νλ€κ³ μκ°ν©λλ€. λμ ν¨κ» μΌν μ¬λμ λΉμ μ΄ λ§ν κ²κ³Ό μ νν μΌμΉνλ μμ μ νν° ν νλ¦Ώμ λ§λ€μ΄ λ¬Έμ λ₯Ό ν΄κ²°νμ΅λλ€. κ·Έλ λ€μ μμ μ μ μ¬ν λ°©μμΌλ‘ select.html ν νλ¦Ώμ μ¬μ μνμ΅λλ€. http://codepen.io/christianacca/pen/xGeWGX?editors=101
λ λ§μ λμμ λλ¦¬μ§ λͺ»ν΄ μ£μ‘ν©λλ€. μκ°μ΄ μ΄λ°ν κ²λΏμ λλ€!
μ€ BTW, λ΄κ° μΈκΈν μ¬λ, κ·Έλ ui-select2 λ₯Ό μ¬μ©νμ΅λλ€
@christianacca λμμ£Όμ
μ κ°μ¬ν©λλ€. λ§€μ° μ μ©νμ΅λλ€.
μ루μ
μ΄ μμΌλ©΄ 곡μ νκ² μ΅λλ€.
μμν :-)
μλ νμΈμ μ¬λ¬λΆ, λ΄ μ루μ μ΄ μμ ν μλͺ»λμκ±°λ @kyleboyle μ΄ λ λμ λμμ λκΉ?
μ루μ μ λλ₯Ό μν΄ μλνμ§ μμλ€ @telwing,νμ§λ§ λ€μ, μ΄λ μͺ½λ @kyleboyleμνλ€. νμ§λ§ μ€μ λ‘ νν°λ§μ νκ³ μμ§λ μμ΅λλ€. μ λ $scope.usersλΌλ λ°°μ΄μμ λ°μ΄ν°λ₯Ό μ λ ¬νκ³ μμ΅λλ€. ν΄λΉ λ°°μ΄μμ μμλ₯Ό μ κ±°νκ³ ν μ΄λΈ 맀κ°λ³μμμ reload()λ₯Ό νΈμΆνλ©΄ μ무 μΌλ μΌμ΄λμ§ μμ΅λλ€. λ΄κ° κΈ°λ³Έμ μΈ κ²μ λμΉκ³ μμ§ μλ ν μ΄μ κ°μ κ²μ΄ κ·Έλ κ² λ³΅μ‘νλ€λ κ²μ΄ μ λ§ λλμ΅λλ€.
@developersatish.iλ tableParams μλ₯Ό μ€μ νλ €κ³ μλνμ§λ§ λ΄ getdata ν¨μλ νμ΄μ§ λ‘λ μμλ§ νΈμΆλλ λ°λ©΄ λλ‘λ€μ΄ λͺ©λ‘μΌλ‘ λ°μ΄ν°λ₯Ό νν°λ§νλ©΄ μ΄ ν¨μλ₯Ό νΈμΆν μ μμ΅λλ€.
$scope.tableParams = μλ‘μ΄ ngTableParams({
page: 1, // 첫 νμ΄μ§ νμ
count: 8, // νμ΄μ§λΉ μΉ΄μ΄νΈ
μ λ ¬: {
LastSeen: 'desc' // μ΄κΈ° μ λ ¬
},
νν°: {
PatientName: '', // μ΄κΈ° νν°
},
}, {
νν° μ€μμΉ: μ°Έ,
getData: ν¨μ($defer, params) {
// λ΄μ₯ κ°λ νν° μ¬μ©
var FilteredData = params.filter() ?
$filter('filter')($scope.items, params.filter()) :
$scope.items;
var orderedData = params.sorting() ?
$filter('orderBy')(filteredData, params.orderBy()) : filteredData;
params.total(orderedData.length); // set total for recalc pagination
$scope.tableParams.count(orderedData.slice((params.page() - 1) * params.count(), params.page() * params.count()));
$defer.resolve(orderedData.slice((params.page() - 1) * params.count(), params.page() * params.count()));
}
});
κ°μ₯ μ μ©ν λκΈ
λ΄ λ°μ΄ν°κ° DOMμ μ±κ³΅μ μΌλ‘ λ‘λλμμ§λ§ μλ²μμ λ°μ΄ν°λ₯Ό κ°μ Έμ€κ³ tableParams.reload()λ‘ ng-tableμ μλ‘ κ³ μΉκ³ μ ν λ κ²°κ³Όλ₯Ό λ°μνμ§ μμ§λ§ μ λ ¬ λλ νμ΄μ§μ ν΄λ¦νλ©΄ κ²°κ³Όκ° λ°μλ©λλ€.
μ΄κ²μ μ΄λ€ λ¬Έμ κ° λ μ μμ΅λκΉ?