0

我刚开始玩AngularJS然而,当我尝试使用角度引导指令来创建选项卡式窗格时,我确实偶然发现了一个让我非常困惑的案例。我遵循了这个例子,我唯一改变的是将TabsCtrl变量重命名为TabsController,因为我在应用程序的其余部分中一直使用 *Controller 约定。

我发现真正奇怪的是,这个重命名破坏了整个事情!该TabsController函数在重命名后从未执行。您可以在plunker 链接上自行测试。

我需要弄清楚这一点,因为像这样重命名一个对象会在我不知道为什么的情况下破坏它似乎很可怕。*Controller 变量名是否以某种方式保留?为什么我能够毫无问题地为其他控制器使用 *Controller 命名约定?

编辑:似乎TabsController是导致问题的确切词。我尝试将其命名为 BajsController,并且有效..

4

1 回答 1

3

哦,我找到了。

似乎引导角度指令已经定义了一个名为 的控制器"TabsController",所以这就是冲突所在。

当我在调试控制台中查找现有对象时,我没有发现这个冲突"TabsController",但这当然是因为它没有在 bootstrap 指令中声明为全局变量。

于 2013-06-19T13:28:18.040 回答