【发布时间】:2016-05-15 15:59:33
【问题描述】:
我正在制作一个动态的日期列表。用户可以添加他想要的所有datepickers,但我必须验证没有匹配的日期,它们都必须不同,这是唯一的必要条件。
我已经进行了自定义指令验证并且它被正确触发,但是当我尝试使用它的隔离范围时,我得到了那个错误(多个指令)。我在这里看到的其他问题/解决方案建议删除隔离范围,但我需要将日期数组传递给指令并能够将它们与当前选择的进行比较。
这是重现问题的codepen。如果您删除noMatchingDates 指令的scope,错误就会消失,您可以正确查看和添加日期选择器。我的意思是scope:
scope: {
getAllDates: "&allDates"
}
我认为这与docs中的这一行有关:
多个指令请求隔离范围。
它可能还与 md-datepicker 有关,它使用隔离范围会有更多指令。那么,我该如何解决这个错误(并且仍然能够发送日期列表)?
如果由于md-datepicker 的性质而无法解决(保持范围),我该如何进行动态验证?我认为这可以使用控制器和ng-change 来完成,但我不确定这是否是一个合适的解决方案。
【问题讨论】:
标签: angularjs angularjs-directive angular-material isolate-scope