【问题标题】:AngularStrap tabs load html fragmentAngularStrap 选项卡加载 html 片段
【发布时间】:2013-06-04 13:00:48
【问题描述】:

我目前正在使用 Twitter Bootstrap 开发一个 AngularJS 项目,并且正在尝试将我的 Bootstrap 指令转换为 Angular。我决定使用 AngularStrap,因为它提供了对 Bootstrap-Select 的支持(我不确定 AngularUI 是否相同)。 tabs example 仅涵盖静态 html。有没有办法通过 AngularStrap 或 AngularJS 动态加载 html 片段,以便仅在单击选项卡时调用它?我的 html 片段也需要执行 javascript。

我这样做的原因有两个。首先是每个选项卡都包含相当多的内容,我不希望一次加载所有选项卡,这会减慢加载速度。第二个原因是我更喜欢对我的源代码采用更模块化的方法,而不是将所有内容都放在同一个 html 文件中。

【问题讨论】:

    标签: angularjs angular-strap


    【解决方案1】:

    您可以使用ng-include 指令来加载html 片段。

    使用 AngularStrap 选项卡的示例,您可以使用 url 切换静态内容以检索 html 片段。 Here is an example 基于具有以下关键更改的 AngularStrap 选项卡示例:

    1) $scope.tabs 现在有一个 page 属性,而不是指向 template1.html、template2.html 或 template3.html 的内容。

        $scope.tabs = [
        {title:'Home', page: 'template1.html'},
        {title:'Profile', page: 'template2.html'},
        {title:'About', page: 'template3.html'}
      ];
    

    2) 添加ng-include 以显示当前选择的标签页。

      <div ng-include src="tabs[tabs.activeTab].page"></div>
    

    注意:我在ng-repeat 之外有ng-include,因此不会加载每个选项卡的页面内容(即使未显示)。

    【讨论】:

    • 这个答案给了我使用内联标签内容制作示例所需的内容。 plnkr.co/edit/gS0i0V?p=preview
    • @Gloopy - 该示例现在似乎不起作用:然后页面内容不会改变您点击选项卡按钮。您知道这种技术是否仍然有效?
    • 以下似乎现在可以工作:
    • @Gloopy,你能帮我看看这个问题吗:stackoverflow.com/questions/34203064/…
    猜你喜欢
    相关资源
    最近更新 更多
    热门标签