如何使用UI Bootstrap获取$ compile模板?

时间:2017-07-10 17:56:42

标签: angularjs angular-ui-bootstrap

我正在尝试为uib-popover创建动态模板。 popover声明循环为settlements。这是popover声明:

<a
    ng-click="noop($event)"
    popover-title="{{settlement.name}} ({{settlement.age}}) {{settlement.gender}}"
    popover-trigger="'focus'"
    popover-placement="auto top"
    tabindex="0"
    uib-popover-template="getHtml(settlement)"
>{{settlement.name}}</a

这是我的getHtml

let url = `/settlment/${settlement.id}`;
let button = $scope.isParent ? `<a class="btn btn-default" on-click="clickButton()">${partInfo}</a>` : "";
let html = `<div class="popver">
                <p>${settlement.person ? "Person" : ""}</p>
                <p>${mrnLabel}: ${mrn}</p>
                ${button}
            </div>`;

由于我需要on-click,我需要一个模板,因此html将绑定到$scope

我在js中尝试了很多不同的东西。我试图返回$compile(html){$scope},但我收到错误。

[$parse:isecdom] Referencing DOM nodes in Angular expressions is disallowed!

我已尝试直接添加到$templateCache,但按钮未显示。我已尝试$compile并添加到$templateCache,但按钮仍未显示。我需要做些什么来完成这项工作?

0 个答案:

没有答案