使用 Angularjs 按当年的月份过滤
Filter by the month of the current year with Angularjs
我有一个包含应付账款的屏幕,我想按月过滤每个账户,应该首先加载当前月份,并有上一个和下一个选项在月份之间、之前和之后导航。
该项目在 angularjs v1.5 的 Symfony 2 中。
Controller.js
$scope.selectedMonth = '';
$scope.selectedMonthFilter = function(created_at) {
console.log(created_at);
var d = new Date(created_at);
if(!$scope.selectedMonth) return true;
return d.getMonth() === $scope.selectedMonth;
};
twig 与我的过滤器,查询是另一个使用名称搜索的过滤器(它正在工作)
ng-repeat="income in incomes | filter:query:selectedMonthFilter(income.create_at) | orderBy: 'income.id'"
错误是没有搜索到当年,控制台显示"undefined",仅此而已。
我只是想让它过滤当年的月份作为大纲。
语法错误。过滤器应该 return 起作用。
修复:
ng-repeat="income in incomes | filter:selectedMonthFilter(criteria) | orderBy: 'income.id'"
//过滤
$scope.selectedMonth = "";
$scope.selectedMonthFilter = function (criteria) {
console.log(criteria) // matching criteria
return function (income) {
console.log(income);
var d = new Date(income.created_at);
if (!$scope.selectedMonth) return true;
return d.getMonth() === $scope.selectedMonth;
};
};
我有一个包含应付账款的屏幕,我想按月过滤每个账户,应该首先加载当前月份,并有上一个和下一个选项在月份之间、之前和之后导航。
该项目在 angularjs v1.5 的 Symfony 2 中。
Controller.js
$scope.selectedMonth = '';
$scope.selectedMonthFilter = function(created_at) {
console.log(created_at);
var d = new Date(created_at);
if(!$scope.selectedMonth) return true;
return d.getMonth() === $scope.selectedMonth;
};
twig 与我的过滤器,查询是另一个使用名称搜索的过滤器(它正在工作)
ng-repeat="income in incomes | filter:query:selectedMonthFilter(income.create_at) | orderBy: 'income.id'"
错误是没有搜索到当年,控制台显示"undefined",仅此而已。
我只是想让它过滤当年的月份作为大纲。
语法错误。过滤器应该 return 起作用。
修复:
ng-repeat="income in incomes | filter:selectedMonthFilter(criteria) | orderBy: 'income.id'"
//过滤
$scope.selectedMonth = "";
$scope.selectedMonthFilter = function (criteria) {
console.log(criteria) // matching criteria
return function (income) {
console.log(income);
var d = new Date(income.created_at);
if (!$scope.selectedMonth) return true;
return d.getMonth() === $scope.selectedMonth;
};
};