OptimalBPM / angular-schema-form-dynamic-select

AngularStrap and AngularUI dynamic select implementation(static/sync/async/http, filters) for Angular Schema Form
MIT License
55 stars 45 forks source link

Uncaught Error: [$rootScope:infdig] 10 $digest() iterations reached. Aborting! #92

Closed suricactus closed 8 years ago

suricactus commented 8 years ago

I'm using "angular": "1.5.7","angular-animate":"1.5.7","angular-schema-form":"0.8.13","angular-schema-form-dynamic-select":"0.15.0".

When I use mouse to select tags everything seems to be ok. But when I add at least one item by keyboard and type the next, the following error raises in the console:

Error: [$rootScope:infdig] 10 $digest() iterations reached. Aborting!
Watchers fired in the last 5 iterations: [[{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":true,"disabled":true},"oldVal":{"active":true,"disabled":false}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":true},"oldVal":{"active":false,"disabled":false}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":true},"oldVal":{"active":false,"disabled":false}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":true},"oldVal":{"active":false,"disabled":false}}],[{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":true,"disabled":false},"oldVal":{"active":true,"disabled":true}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":false},"oldVal":{"active":false,"disabled":true}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":false},"oldVal":{"active":false,"disabled":true}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":false},"oldVal":{"active":false,"disabled":true}}],[{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":true,"disabled":true},"oldVal":{"active":true,"disabled":false}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":true},"oldVal":{"active":false,"disabled":false}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":true},"oldVal":{"active":false,"disabled":false}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":true},"oldVal":{"active":false,"disabled":false}}],[{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":true,"disabled":false},"oldVal":{"active":true,"disabled":true}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":false},"oldVal":{"active":false,"disabled":true}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":false},"oldVal":{"active":false,"disabled":true}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":false},"oldVal":{"active":false,"disabled":true}}],[{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":true,"disabled":true},"oldVal":{"active":true,"disabled":false}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":true},"oldVal":{"active":false,"disabled":false}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":true},"oldVal":{"active":false,"disabled":false}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":true},"oldVal":{"active":false,"disabled":false}}]]
http://errors.angularjs.org/1.5.7/$rootScope/infdig?p0=10&p1=%5B%5B%7B%22ms…22oldVal%22%3A%7B%22active%22%3Afalse%2C%22disabled%22%3Afalse%7D%7D%5D%5D
    at angular.js:68
    at Scope.$digest (angular.js:17324)
    at Scope.$apply (angular.js:17552)
    at angular.js:19383
    at completeOutstandingRequest (angular.js:5955)
    at angular.js:6234(anonymous function) @ angular.js:13708(anonymous function) @ angular.js:10347$apply @ angular.js:17554(anonymous function) @ angular.js:19383completeOutstandingRequest @ angular.js:5955(anonymous function) @ angular.js:6234setTimeout (async)Browser.self.defer @ angular.js:6232timeout @ angular.js:19372animateHandler @ select.js:404(anonymous function) @ angular-animate.js:2711forEach @ angular.js:321(anonymous function) @ angular-animate.js:2710requestAnimationFrame (async)(anonymous function) @ angular.js:16464(anonymous function) @ angular-animate.js:2709(anonymous function) @ angular-animate.js:2263notifyProgress @ angular-animate.js:2702(anonymous function) @ angular-animate.js:2695(anonymous function) @ angular.js:5825forEach @ angular.js:321_resolve @ angular.js:5824(anonymous function) @ angular.js:5817(anonymous function) @ angular.js:5674AnimateRunner._tick @ angular.js:5741complete @ angular.js:5816close @ angular-animate.js:3269triggerAnimationStart @ angular-animate.js:3072nextTick @ angular-animate.js:423(anonymous function) @ angular-animate.js:412requestAnimationFrame (async)(anonymous function) @ angular.js:16464scheduler.waitUntilQuiet @ angular-animate.js:409waitUntilQuiet @ angular-animate.js:948start @ angular-animate.js:1225triggerAnimationStart @ angular-animate.js:3074nextTick @ angular-animate.js:423(anonymous function) @ angular-animate.js:412requestAnimationFrame (async)(anonymous function) @ angular.js:16464scheduler.waitUntilQuiet @ angular-animate.js:409waitUntilQuiet @ angular-animate.js:948start @ angular-animate.js:1225triggerAnimationStart @ angular-animate.js:3074nextTick @ angular-animate.js:423scheduler @ angular-animate.js:393(anonymous function) @ angular-animate.js:3087$digest @ angular.js:17337$apply @ angular.js:17552(anonymous function) @ angular.js:25627dispatch @ jquery.js:4435elemData.handle @ jquery.js:4121
angular.js:68 Uncaught Error: [$rootScope:infdig] 10 $digest() iterations reached. Aborting!
Watchers fired in the last 5 iterations: [[{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":true,"disabled":true},"oldVal":{"active":true,"disabled":false}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":true},"oldVal":{"active":false,"disabled":false}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":true},"oldVal":{"active":false,"disabled":false}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":true},"oldVal":{"active":false,"disabled":false}}],[{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":true,"disabled":false},"oldVal":{"active":true,"disabled":true}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":false},"oldVal":{"active":false,"disabled":true}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":false},"oldVal":{"active":false,"disabled":true}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":false},"oldVal":{"active":false,"disabled":true}}],[{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":true,"disabled":true},"oldVal":{"active":true,"disabled":false}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":true},"oldVal":{"active":false,"disabled":false}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":true},"oldVal":{"active":false,"disabled":false}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":true},"oldVal":{"active":false,"disabled":false}}],[{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":true,"disabled":false},"oldVal":{"active":true,"disabled":true}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":false},"oldVal":{"active":false,"disabled":true}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":false},"oldVal":{"active":false,"disabled":true}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":false},"oldVal":{"active":false,"disabled":true}}],[{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":true,"disabled":true},"oldVal":{"active":true,"disabled":false}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":true},"oldVal":{"active":false,"disabled":false}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":true},"oldVal":{"active":false,"disabled":false}},{"msg":"{active: $select.isActive(this), disabled: $select.isDisabled(this)}","newVal":{"active":false,"disabled":true},"oldVal":{"active":false,"disabled":false}}]]
http://errors.angularjs.org/1.5.7/$rootScope/infdig?p0=10&p1=%5B%5B%7B%22ms…22oldVal%22%3A%7B%22active%22%3Afalse%2C%22disabled%22%3Afalse%7D%7D%5D%5D(anonymous function) @ angular.js:68$digest @ angular.js:17324$apply @ angular.js:17552(anonymous function) @ angular.js:19383completeOutstandingRequest @ angular.js:5955(anonymous function) @ angular.js:6234setTimeout (async)Browser.self.defer @ angular.js:6232timeout @ angular.js:19372animateHandler @ select.js:404(anonymous function) @ angular-animate.js:2711forEach @ angular.js:321(anonymous function) @ angular-animate.js:2710requestAnimationFrame (async)(anonymous function) @ angular.js:16464(anonymous function) @ angular-animate.js:2709(anonymous function) @ angular-animate.js:2263notifyProgress @ angular-animate.js:2702(anonymous function) @ angular-animate.js:2695(anonymous function) @ angular.js:5825forEach @ angular.js:321_resolve @ angular.js:5824(anonymous function) @ angular.js:5817(anonymous function) @ angular.js:5674AnimateRunner._tick @ angular.js:5741complete @ angular.js:5816close @ angular-animate.js:3269triggerAnimationStart @ angular-animate.js:3072nextTick @ angular-animate.js:423(anonymous function) @ angular-animate.js:412requestAnimationFrame (async)(anonymous function) @ angular.js:16464scheduler.waitUntilQuiet @ angular-animate.js:409waitUntilQuiet @ angular-animate.js:948start @ angular-animate.js:1225triggerAnimationStart @ angular-animate.js:3074nextTick @ angular-animate.js:423(anonymous function) @ angular-animate.js:412requestAnimationFrame (async)(anonymous function) @ angular.js:16464scheduler.waitUntilQuiet @ angular-animate.js:409waitUntilQuiet @ angular-animate.js:948start @ angular-animate.js:1225triggerAnimationStart @ angular-animate.js:3074nextTick @ angular-animate.js:423scheduler @ angular-animate.js:393(anonymous function) @ angular-animate.js:3087$digest @ angular.js:17337$apply @ angular.js:17552(anonymous function) @ angular.js:25627dispatch @ jquery.js:4435elemData.handle @ jquery.js:4121

This is my example code:

$scope.searchRoles = function(obj, term) { return [{"id":20,"name":"test0.631577237974852","attrs":null,"descr":null,"parentRole":[]},{"id":25,"name":"test0.580498022492975","attrs":null,"descr":null,"parentRole":[]},{"id":11,"name":"test0.0908311703242362","attrs":null,"descr":null,"parentRole":[]},{"id":17,"name":"test0.940356022212654","attrs":null,"descr":null,"parentRole":[]},];
$scope.schema = {
        "$schema": "http://json-schema.org/draft-04/schema#",
        "type": "object",
        "title": "",
        "properties": {
          "parentRole": {
            "title": "Parent Roles",
            "type": "array",
            "items": {"type": "integer"},
          },
        },
      };
$scope.form = [
        {
          "key": "parentRole",
          "type": "uiselectmultiple",
          "options": {
            "multiple": "true",
            "callback": "searchRoles",
            "map": {
              "valueProperty": "id",
              "nameProperty": "name",
            },
          },
        },
];
nicklasb commented 8 years ago

Hard to tell what the problem is, could you please provide a plunkr or similar?

suricactus commented 8 years ago

Actually it was an issue with angular-ui-select. They know about it, so this issue has nothing to do with this plugin. https://github.com/angular-ui/ui-select/pull/1712