【发布时间】:2017-10-07 19:23:38
【问题描述】:
我正在尝试编写一个自定义指令,该指令将“创建”一个仪表板小部件,包括:
- 标题(小部件的名称)
- 模式(数据应该被建模或显示的方式,即它可以是注册的用户数量 - 一个数字,或者它可以是显示大多数用户的星期几的字符串等...)李>
- 数据(提供给架构的数据、数字、字符串或从数据库或数据源获取的任何内容)
这是我的指令所取得的进展:
app.directive('widget', function () {
return {
restrict: 'E',
scope: {
title: '@',
schema: '&',
data: '&'
},
template: '<div>' +
'<span class="widget-title">{{title}}</span>' +
'<div schema="schema()" data="data()"></div>' +
'</div>'
}})
还有我的html:
<widget title="Number of users" options="numberWidget" data="userData">
</widget>
我被困在如何将数据“绑定”到架构上,以及我应该在哪里定义不同的架构(或小部件模型)。也许我的方法是错误的,所以一点方向将不胜感激。如果需要,我可以提供更多信息。
编辑: 这是我的CodePen,说明了我有多远以及我认为我可以实现的目标 - 也许可以(或应该)以不同的方式完成。
【问题讨论】:
-
什么是 schema() 和 data()。是在控制器里吗???据我了解,您只是试图将对象从视图范围绑定到指令范围。是这样吗?
-
能否提供 schema() 和 data() 返回示例。最好为它创建一个 codePen(使用静态值)。
-
我已经添加了一个例子,说明我已经完成了多远,因为我被卡住了,目前还没有完成,因此我写了这个问题。请检查我的编辑。
标签: angularjs angularjs-directive angularjs-scope widget dashboard