出于学习目的,我想创建一个可以与简单标记一起使用的tabs指令(基于自定义元素,没有ng-click等,自动生成的选项卡导航)。
基本设置或多或少都很简单并且工作正常,但有一个例外:当我想预置使用.prepend(...)
自动创建的标签导航时,我会得到抛出错误:TypeError: Cannot read property 'childNodes' of undefined
。
有点连线:导航按预期生成并预先添加。
甚至更有线:使用.append(..)
工作正常 - 没有错误。
.run
在指令中创建一个模板并将其添加到模板缓存中(我希望将所有需要的代码放在一个文件中 - 请不要为此而打我 )(没什么特别的,我猜)
// create and prepend the navigation
var $template = angular.element($templateCache.get('tabs/templates/tabNav.html'));
var $nav = $compile($template)($scope);
// throws error on local setup
// TypeError: Cannot read property 'childNodes' of undefined
$element.prepend($nav);
整个设置请参阅http://plnkr.co/edit/yyTCoPQd4ld3w7kDDFCS?p=preview。
虽然我尝试使用plunkr重现错误(只是将整个shebang复制到那里),但错误没有出现 - 这对我更有帮助。
如果我错过了任何必要的信息,请告诉我 - 我真的很感激任何帮助我解决这个问题的提示。
提前感谢。