Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 8e99e33

Browse files
author
Karl Hepler
committed
Fixed the whole "It\'s not working" thing
1 parent 48a23fc commit 8e99e33

File tree

6 files changed

+31
-37
lines changed

6 files changed

+31
-37
lines changed

‎bower.json‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "angular-middleware",
3-
"version": "2.1.3",
3+
"version": "2.1.4",
44
"description": "Laravel-like middleware for angular ui.router and ngRoute",
55
"main": "dist/angular-middleware.js",
66
"authors": [

‎dist/angular-middleware.js‎

Lines changed: 14 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@
44
// This has to be declared here
55
// because this is concatinated
66
// BEFORE the provider, which defines it
7-
var mappings = {};
8-
var bypassAll = false;
9-
var globalMiddleware = {
7+
var _mappings = {};
8+
var _bypassAll = false;
9+
var _globalMiddleware = {
1010
middleware: []
1111
};
1212

@@ -42,7 +42,9 @@ function middlewareFactory($injector, $q) {
4242
*/
4343
return function initialize(toRoute, toParams) {
4444
// Return early if the toRoute doesn't have middleware
45-
if ( !hasMiddleware(globalMiddleware) && !hasMiddleware(toRoute) ) return;
45+
if ( _bypassAll || !hasMiddleware(_globalMiddleware) && !hasMiddleware(toRoute) ) {
46+
return $q.resolve();
47+
}
4648

4749
// Store a copy of the route parameters in the request
4850
request.params = angular.copy(toParams);
@@ -53,19 +55,14 @@ function middlewareFactory($injector, $q) {
5355
// Set the middleware names.
5456
// Make sure the globals are first, then concat toRoute
5557
middleware.names =
56-
getMiddlewareNames(globalMiddleware)
58+
getMiddlewareNames(_globalMiddleware)
5759
.concat(getMiddlewareNames(toRoute));
5860

5961
// Create a deferred promise
6062
middleware.resolution = $q.defer();
6163

62-
// If we are bypassing everything,
63-
// then go ahead and resolve now
64-
if ( bypassAll ) middleware.resolution.resolve();
65-
66-
// We're not bypassing it,
67-
// so process that first middleware!
68-
else middleware.next();
64+
// Process that first middleware!
65+
middleware.next();
6966

7067
// Return the promise
7168
return middleware.resolution.promise;
@@ -78,7 +75,7 @@ function middlewareFactory($injector, $q) {
7875
* @returns {boolean}
7976
*/
8077
function hasMiddleware(route) {
81-
return !!route.middleware;
78+
return !!route.middleware&&!!route.middleware.length;
8279
}
8380

8481
/**
@@ -104,7 +101,7 @@ function middlewareFactory($injector, $q) {
104101
*/
105102
function nextMiddleware() {
106103
// Get the next middleware
107-
var next = mappings[middleware.names[middleware.index++]];
104+
var next = _mappings[middleware.names[middleware.index++]];
108105

109106
// If there is middleware, then invoke it, binding request
110107
if ( next ) $injector.invoke(next, request);
@@ -153,7 +150,7 @@ var $middleware = function middlewareProvider() {
153150
}
154151

155152
// Set the mappings
156-
mappings = customMappings;
153+
_mappings = customMappings;
157154
};
158155

159156
/**
@@ -170,7 +167,7 @@ var $middleware = function middlewareProvider() {
170167
}
171168

172169
// Set it!
173-
bypassAll = enableBypass;
170+
_bypassAll = enableBypass;
174171
};
175172

176173
this.global = function global(customGlobalMiddleware) {
@@ -180,7 +177,7 @@ var $middleware = function middlewareProvider() {
180177
}
181178

182179
// Set it... and don't forget it.
183-
globalMiddleware.middleware = customGlobalMiddleware;
180+
_globalMiddleware.middleware = customGlobalMiddleware;
184181
};
185182

186183
/** This is the provider's entry point */

‎dist/angular-middleware.min.js‎

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎package.json‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "angular-middleware",
3-
"version": "2.1.3",
3+
"version": "2.1.4",
44
"description": "Laravel-like middleware for angular uiRouter",
55
"main": "dist/angular-middleware.js",
66
"scripts": {

‎src/middleware.factory.js‎

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
// This has to be declared here
22
// because this is concatinated
33
// BEFORE the provider, which defines it
4-
var mappings = {};
5-
var bypassAll = false;
6-
var globalMiddleware = {
4+
var _mappings = {};
5+
var _bypassAll = false;
6+
var _globalMiddleware = {
77
middleware: []
88
};
99

@@ -39,7 +39,9 @@ function middlewareFactory($injector, $q) {
3939
*/
4040
return function initialize(toRoute, toParams) {
4141
// Return early if the toRoute doesn't have middleware
42-
if ( !hasMiddleware(globalMiddleware) && !hasMiddleware(toRoute) ) return;
42+
if ( _bypassAll || !hasMiddleware(_globalMiddleware) && !hasMiddleware(toRoute) ) {
43+
return $q.resolve();
44+
}
4345

4446
// Store a copy of the route parameters in the request
4547
request.params = angular.copy(toParams);
@@ -50,19 +52,14 @@ function middlewareFactory($injector, $q) {
5052
// Set the middleware names.
5153
// Make sure the globals are first, then concat toRoute
5254
middleware.names =
53-
getMiddlewareNames(globalMiddleware)
55+
getMiddlewareNames(_globalMiddleware)
5456
.concat(getMiddlewareNames(toRoute));
5557

5658
// Create a deferred promise
5759
middleware.resolution = $q.defer();
5860

59-
// If we are bypassing everything,
60-
// then go ahead and resolve now
61-
if ( bypassAll ) middleware.resolution.resolve();
62-
63-
// We're not bypassing it,
64-
// so process that first middleware!
65-
else middleware.next();
61+
// Process that first middleware!
62+
middleware.next();
6663

6764
// Return the promise
6865
return middleware.resolution.promise;
@@ -75,7 +72,7 @@ function middlewareFactory($injector, $q) {
7572
* @returns {boolean}
7673
*/
7774
function hasMiddleware(route) {
78-
return !!route.middleware;
75+
return !!route.middleware&&!!route.middleware.length;
7976
}
8077

8178
/**
@@ -101,7 +98,7 @@ function middlewareFactory($injector, $q) {
10198
*/
10299
function nextMiddleware() {
103100
// Get the next middleware
104-
var next = mappings[middleware.names[middleware.index++]];
101+
var next = _mappings[middleware.names[middleware.index++]];
105102

106103
// If there is middleware, then invoke it, binding request
107104
if ( next ) $injector.invoke(next, request);

‎src/middleware.provider.js‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ var $middleware = function middlewareProvider() {
1212
}
1313

1414
// Set the mappings
15-
mappings = customMappings;
15+
_mappings = customMappings;
1616
};
1717

1818
/**
@@ -29,7 +29,7 @@ var $middleware = function middlewareProvider() {
2929
}
3030

3131
// Set it!
32-
bypassAll = enableBypass;
32+
_bypassAll = enableBypass;
3333
};
3434

3535
this.global = function global(customGlobalMiddleware) {
@@ -39,7 +39,7 @@ var $middleware = function middlewareProvider() {
3939
}
4040

4141
// Set it... and don't forget it.
42-
globalMiddleware.middleware = customGlobalMiddleware;
42+
_globalMiddleware.middleware = customGlobalMiddleware;
4343
};
4444

4545
/** This is the provider's entry point */

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /