Rumah > Soal Jawab > teks badan
正常是这样添加的
var app = angular.module('myapp', [
'ui.bootstrap'
]).filter('reverse', function() {
return function(items) {
if(items) {
return items.slice().reverse();
} else {
return [];
}
}
}).filter('slice', function () {
return function (inputArr, start, end) {
var resultArr = [];
if (!angular.isArray(inputArr)) { return inputArr; }
if (start < 0) { start = 0; }
if (end > inputArr.length) { end = inputArr.length; }
for (var i = start; i < end; ++i) {
resultArr.push(inputArr[i]);
}
return resultArr;
};
});
但是用了ui router就不知道filter该添加到哪里了
ringa_lee2017-04-10 15:55:56
过滤器是可以全局使用的,为什么要给每个路由添加过滤器呢?
1.推荐把filter
写在另一个js
文件中,然后在你的页面中引用。
可以是下面这样:
angular.module('myapp').filter('reverse', function() {
return function(items) {
if(items) {
return items.slice().reverse();
} else {
return [];
}
}
}).filter('slice', function () {
return function (inputArr, start, end) {
var resultArr = [];
if (!angular.isArray(inputArr)) { return inputArr; }
if (start < 0) { start = 0; }
if (end > inputArr.length) { end = inputArr.length; }
for (var i = start; i < end; ++i) {
resultArr.push(inputArr[i]);
}
return resultArr;
};
});
2.你也可以直接进行链式的调用,在那个文件下面写路由呀,可以是这样(这种方法不推荐,不利于维护。):
angular.module('myapp',[
'ui.bootstrap'
]).filter('reverse', function() {
return function(items) {
if(items) {
return items.slice().reverse();
} else {
return [];
}
}
}).filter('slice', function () {
return function (inputArr, start, end) {
var resultArr = [];
if (!angular.isArray(inputArr)) { return inputArr; }
if (start < 0) { start = 0; }
if (end > inputArr.length) { end = inputArr.length; }
for (var i = start; i < end; ++i) {
resultArr.push(inputArr[i]);
}
return resultArr;
};
}).config(function ($stateProvider, $urlRouterProvider) {
$urlRouterProvider.when("", "/PageTab");
$stateProvider
.state("PageTab", {
url: "/PageTab",
templateUrl: "PageTab.html"
})
.state("PageTab.Page1", {
url:"/Page1",
templateUrl: "Page-1.html"
})
.state("PageTab.Page2", {
url:"/Page2",
templateUrl: "Page-2.html"
})
.state("PageTab.Page3", {
url:"/Page3",
templateUrl: "Page3.html"
});
});