我有一个角分量,它有两个输入输入A和输入B。
- InputA只能有以下值之一:A1 A2 A3
- InputB只能有以下值之一:B1 B2 B3 B4
问题是,从商业Angular 来看,并非所有的InputA值都可以与所有的InputB值匹配。例如:
- A1只能与B1和B4一起使用。
- A2只能与B1,B2和B3一起使用。
- A3只能与B1一起使用。
我如何执行类型级别检查,以确保使用我的组件的开发人员没有使用不存在的组合,例如A1与B2的组合。我想在IDE中显示一个错误,当dev使用我的组件编写类似于以下内容时:<my-component inputA=A1 inputB=B1></my-component>
写入这样的行不会引发类型级别错误,因为A1是InputA的有效值,B2是InputB的有效值。但组合并不好。
我已经实现了一个抛出运行时错误的方法,但是在编译和执行之前在IDE中有错误会更好。
1条答案
按热度按时间t98cgbkg1#
如果你需要简单的答案:
您可以将输入实现为“set:函数,例如:@Input()设置inputB(value){...}并在那里检查,但是如果你使用2个inputs => mby,你会遇到同步问题(inputB可以在inputA之前设置)。