我正在尝试编写一个指令,该指令将在从服务器获取数据时在 div 上显示“加载”消息。
到目前为止,我已经设法得到这个:
.directive('dataLoadingPanel', function () {
return {
templateUrl: '/Utilities/loadingPanelBox.html',
scope: {
panelData: '=',
loadingMessage: "@"
}
};
})
loadingPanelBox.html 有这个:
<div class="modal-dialog" style="background-color: white;width:300px;height:46px;padding-top:16px;top:30px;padding-left:40px;border-radius: 4px;" ng-hide="panelData">
<img src="/images/BlueSpinner.gif" style="margin-top:-2px" /> {{loadingMessage}}
</div>
这实际上完成了我想要的大部分工作,显示面板,直到返回数据时它消失。
不幸的是,它也会覆盖它所在的 div 的内容,所以在这种情况下:
<div data-loading-panel panel-data="myData" loading-message="Loading Data">Hello There</div>
你好,从来没有见过。这似乎是我使用模板的功能。
有没有办法阻止这种覆盖的发生,或者除了使用模板之外,还有什么方法可以添加内容。