AngularJS:在custom指令中加载其他模板

时间:2015-08-07 13:09:10

标签: javascript angularjs angular-directive

我有一个Angular自定义指令,它使用一个非常简单的轮播模板,只有2个幻灯片加载和绑定,因为我希望在页面上重复大量的幻灯片。当用户与指令交互时,我想加载一个包含其余幻灯片的附加模板,并在与指令中其他所有内容相同的范围内编译它。

到目前为止,我正是这样做的。这个函数在我的指令中,当用户点击" next"按钮。

function loadExtraSlides(){

    $templateRequest('/templates/propertyCardExtraSlides.tpl.html').then(function(template) {
        $compile($(carouselEl).append(template).contents())($scope);
              // Template is loaded
            }, function() {
                $log.error('Error loading card slides template');
            });

        }
    }
}

这似乎首先起作用,因为模板已加载并插入到轮播中,但遗憾的是新模板未正确绑定到范围。如果我将{{images}}放入主模板,则会从我的指令范围输出一组图像URL。如果我在导入和编译的模板中放入相同的内容,则只输出" {{images}}"到DOM。

希望我做一些简单的错误。任何帮助都会非常感激。

0 个答案:

没有答案