我在尝试维护 DRY [不要重复自己] 的概念时遇到了 AngularJS 的问题。我希望我做错了什么,有人可以指出我的错误。
一家公司销售卡车和汽车。这两个项目具有相似和不同的属性。添加到库存时需要一些,而另一种则不需要,所以看来我必须创建两种形式,一种用于卡车和汽车。好的,没问题。但这是我感到困惑的地方。
卡车和汽车都有一个名为传输的属性,所以我更愿意创建一个“模板”来添加传输类型,并通过 ng-include 将其嵌入到“添加卡车”和“添加汽车”表单中。但是因为我我正在使用 ng-include,模板本身不在主窗体的范围内,我需要限定它的 ng-model。
如果我在传输模板的输入中使用它:ng-model="newTruck.Tramission ",则添加新卡车的表单在范围内并且工作正常,但显然不是我想共享此模板的汽车表单. 所以我想用这个:ng-model="$parent.Transmission"这样模板可以被任何一种形式使用,但这不起作用。
这可能会导致不必要的臃肿网站,即 StockNumber 模板、Interior、Exterior Colors 模板等。
那么,我是否正确,我需要违反 DRY 并为每个具有此类属性的不同产品使用相同的模板,例如“添加传输”模板,还是我做错了什么?
编辑:如果我没有说清楚,传输是汽车和卡车的关联类,而不是原始属性。