离子模态导致TypeError:无法读取null的属性'__cleanup'

时间:2014-11-24 15:50:45

标签: angularjs modal-dialog ionic-framework

我正在玩Ionic Framework及其modal component。但是,每次与离子标签结合使用时,模态都会抛出错误:

TypeError: Cannot read property '__cleanup' of null
    at http://localhost:8100/lib/ionic/js/ionic.bundle.js:39847:15
    at Scope.$broadcast (http://localhost:8100/lib/ionic/js/ionic.bundle.js:20605:28)
    at Scope.$destroy (http://localhost:8100/lib/ionic/js/ionic.bundle.js:20263:14)
    at http://localhost:8100/lib/ionic/js/ionic.bundle.js:36981:20
    at wrappedCallback (http://localhost:8100/lib/ionic/js/ionic.bundle.js:19197:81)
    at http://localhost:8100/lib/ionic/js/ionic.bundle.js:19283:26
    at Scope.$eval (http://localhost:8100/lib/ionic/js/ionic.bundle.js:20326:28)
    at Scope.$digest (http://localhost:8100/lib/ionic/js/ionic.bundle.js:20138:31)
    at Scope.$apply (http://localhost:8100/lib/ionic/js/ionic.bundle.js:20430:24)
    at http://localhost:8100/lib/ionic/js/ionic.bundle.js:21938:36

此问题已在http://forum.ionicframework.com/t/typeerror-cannot-read-property---cleanup-of-null/9543的Ionic论坛中以working fiddle进行了讨论。但是,我无法找到问题的任何修复或解决方法。在最新的离子释放中是否存在针对此问题的已知修复方法?

1 个答案:

答案 0 :(得分:3)

我可以看到问题发生在beta13,但它不会发生在每晚构建上。看这个例子。 https://codepen.io/gnomeontherun/pen/empWMy

我只将源代码更改为每晚构建。

<link href="https://code.ionicframework.com/nightly/css/ionic.css" rel="stylesheet">
<script src="https://code.ionicframework.com/nightly/js/ionic.bundle.js"></script>

我没有深入研究这些变化,但我能够将问题与使用指令链接函数中的$ ionicModal服务的设计隔离开来。我将模态移动到了家庭控制器(我会把它放在那里),它在beta13中运行良好(https://codepen.io/gnomeontherun/pen/dPYWda)。我不相信链接功能是使用它的正确位置,因为只要有状态更改,链接功能就会执行并尝试销毁/重新创建模型。创建模态实例应该在指令的编译或控制器中进行。