Skip to content

Commit 6d9cbf2

Browse files
committed
remove controller On syntax support
1 parent ff71620 commit 6d9cbf2

File tree

4 files changed

+2
-123
lines changed

4 files changed

+2
-123
lines changed

demo/adapterOnController/adapterOnController.html

Lines changed: 0 additions & 38 deletions
This file was deleted.

demo/adapterOnController/adapterOnController.js

Lines changed: 0 additions & 24 deletions
This file was deleted.

src/modules/adapter.js

Lines changed: 2 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,3 @@
1-
function getCtrlOnData(attr, element) {
2-
let onSyntax = attr.match(/^(.+)(\s+on\s+)(.+)?/);
3-
if (onSyntax && onSyntax.length === 4) {
4-
window.console.log('Angular ui-scroll adapter assignment warning. "Controller On" syntax has been deprecated since ui-scroll v1.6.1.');
5-
let ctrl = onSyntax[3];
6-
let tail = onSyntax[1];
7-
let candidate = element;
8-
while (candidate.length) {
9-
let candidateScope = candidate.scope(); // doesn't work when debugInfoEnabled flag = true
10-
let candidateName = (candidate.attr('ng-controller') || '').match(/(\w(?:\w|\d)*)(?:\s+as\s+(\w(?:\w|\d)*))?/);
11-
if (candidateName && candidateName[1] === ctrl) {
12-
return {
13-
target: candidateScope,
14-
source: tail
15-
};
16-
}
17-
candidate = candidate.parent();
18-
}
19-
throw new Error('Angular ui-scroll adapter assignment error. Failed to locate target controller "' + ctrl + '" to inject "' + tail + '"');
20-
}
21-
}
22-
231
class Adapter {
242

253
constructor(viewport, buffer, adjustBuffer, reload, $attr, $parse, element, $scope) {
@@ -43,18 +21,11 @@ class Adapter {
4321
if (!adapterAttr || !(adapterAttr = adapterAttr.replace(/^\s+|\s+$/gm, ''))) {
4422
return;
4523
}
46-
let ctrlOnData = getCtrlOnData(adapterAttr, element);
4724
let adapterOnScope;
4825

4926
try {
50-
if (ctrlOnData) { // "Controller On", deprecated since v1.6.1
51-
$parse(ctrlOnData.source).assign(ctrlOnData.target, {});
52-
adapterOnScope = $parse(ctrlOnData.source)(ctrlOnData.target);
53-
}
54-
else {
55-
$parse(adapterAttr).assign(this.startScope, {});
56-
adapterOnScope = $parse(adapterAttr)(this.startScope);
57-
}
27+
$parse(adapterAttr).assign(this.startScope, {});
28+
adapterOnScope = $parse(adapterAttr)(this.startScope);
5829
}
5930
catch (error) {
6031
error.message = `Angular ui-scroll Adapter assignment exception.\n` +

test/AssigningSpec.js

Lines changed: 0 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -139,36 +139,6 @@ describe('uiScroll', function () {
139139
executeTest(template, 'MyBottomController', 'ctrl');
140140
});
141141

142-
it('should work for "on" syntax (viewport)', function () {
143-
var template =
144-
'<div ng-controller="MyTopController">' +
145-
'<div ng-controller="MyInnerController" ng-if="name">' +
146-
'<div ng-controller="MyBottomController" ng-if="name">' +
147-
'<div ui-scroll-viewport style="height: 200px" ng-if="name">' +
148-
'<div ui-scroll="item in myMultipageDatasource" adapter="adapter on MyInnerController">' +
149-
'{{$index}}: {{item}}' +
150-
'</div>' +
151-
'</div>' +
152-
'</div>' +
153-
'</div>' +
154-
'</div>';
155-
executeTest(template, 'MyInnerController');
156-
});
157-
158-
it('should work for "on" syntax (no viewport)', function () {
159-
var template =
160-
'<div ng-controller="MyTopController">' +
161-
'<div ng-controller="MyInnerController" ng-if="name">' +
162-
'<div ng-controller="MyBottomController" ng-if="name">' +
163-
'<div ui-scroll="item in myMultipageDatasource" adapter="adapter on MyInnerController">' +
164-
'{{$index}}: {{item}}' +
165-
'</div>' +
166-
'</div>' +
167-
'</div>' +
168-
'</div>';
169-
executeTest(template, 'MyInnerController');
170-
});
171-
172142
it('should work for "Controller As" syntax (viewport)', function () {
173143
var template =
174144
'<div ng-controller="MyTopController">' +

0 commit comments

Comments
 (0)