0
使用angular指令,我在我的angularjs項目中創建了一個自定義timepicker。不幸的是,在使用模式時,時間選擇器無法正常工作,請參閱:http://plnkr.co/edit/QvBHJyoA4O32y9cnsNzEAngularjs:Modal中的JQuery UI指令導致麻煩
第一次打開模式時,一切正常。但關閉它時(通過點擊某處模式外),並再次打開它,我看到這個錯誤控制檯:
TypeError: Cannot read property 'timeFormat' of undefined
at methods.setTime (https://dl.dropboxusercontent.com/u/1004639/stackoverflow/jquery.timepicker.js:222:81)
at $.fn.timepicker (https://dl.dropboxusercontent.com/u/1004639/stackoverflow/jquery.timepicker.js:821:48)
at ngModel.$render (http://run.plnkr.co/o2Sj3E7DaqcyasgA/app.js:26:23)
at Object.<anonymous> (https://dl.dropboxusercontent.com/u/1004639/stackoverflow/angular.min.js:140:131)
at Object.e.$digest (https://dl.dropboxusercontent.com/u/1004639/stackoverflow/angular.min.js:86:286)
at Object.e.$apply (https://dl.dropboxusercontent.com/u/1004639/stackoverflow/angular.min.js:88:506)
at HTMLButtonElement.<anonymous> (https://dl.dropboxusercontent.com/u/1004639/stackoverflow/angular.min.js:144:122)
at HTMLButtonElement.x.event.dispatch (https://dl.dropboxusercontent.com/u/1004639/stackoverflow/jquery.min.js:5:9843)
at HTMLButtonElement.y.handle (https://dl.dropboxusercontent.com/u/1004639/stackoverflow/jquery.min.js:5:6626)
當關閉並重新打開模式,我在控制檯中看到錯誤消息的兩倍。
我認爲問題與渲染回調有關(ngModel。$ render = ...)。似乎角嘗試渲染不再存在的東西。但我無法修復它。特別是因爲指令不知道它是否處於模態。因此,緩存模式關閉事件是沒有意義的。