在我的角度的应用程序,我有几个嵌套的NG-重复通过一些预期的JSON对象来分析,例如:如何将实际对象(即对对象的引用)传递给指令?
{
landAnimals: {
horse: {
sound: "Nay",
legs: 4,
},
beaver: {
sound: "thwack",
legs: 2
}
},
waterAnimals: {
dolphin: {
sound: "Eee",
fins: 3,
},
goldfish: {
sound: "-",
fins: 1
}
}
}
在一个点上,我想要做的就是通过动物类我指令和另一个动物对象。
例如,如果用户将其他动物拖入我的应用中生成的列表中,我想添加他拖入上述JSON中的动物。
要做到这一点,我试图将动物对象传递给指令,然后添加新的动物。
例如:
<div ng-repeat="animalCategory in animals on-drop-success='animalCategory'">
<div ng-repeat="(key, value) in animalCategory">
{{key}}
</div>
</div>
,然后在我的onDropSuccess
指令,在link
功能,我想 (不要担心,我怎么做的拖放,它不工作,甚至这个简单的测试)
...
link: function (scope, element, attrs) {
attrs.onDropSuccess["newAnimal"] = {sound: "miy", legs: 2};
...
总之,我想给animalCategory
对象传递给我的指令,这样我可以在它添加更多的对象。但它不起作用。它不会添加对象,即使我手动提供一个天真的对象(即它与拖动实施无关)
任何想法为什么会发生这种情况?
您的指令的链接函数是否被执行?如果不是的话,修复你的模板,真正使用指令作为元素属性(不是'ng-repeat'中的表达的一部分)。 – hon2a 2014-11-24 14:13:41
你能设置一个我们可以玩的小提琴吗? – 2014-11-24 14:14:44
@MattWay这里有一些非常相似的东西。当拖动“Boy”或“Girl”时,我想添加到拖动的人物对象上http://codepen.io/Raphi/pen/dPoYvX – CodyBugstein 2014-11-24 14:19:27