我对Angular有经验,但当然,有一些事情仍然超出我的理解范围。我试图理解在元素上设置特定样式的指令,例如:
sed -i.bck 's~<p> </p>~~g' /tmp/file
我的问题是,这个指令是如何在代码中定义的?是否有针对每种可能的样式值(颜色,背景颜色,边框等)的单独指令定义?或者是<div [style.color]="'red'">...</div>
指令有一个定义,它有内部代码,可以检索style
之后的部分并相应地运行?
换句话说,我如何定义一个类似的属性,它可以接受.
之后的行为,并在不同的后缀上表现不同?
谢谢!
答案 0 :(得分:2)
它内置的Angular绑定语法 你不能自己建造这样的东西。
另见
-
https://github.com/angular/angular/blob/master/packages/compiler/src/template_parser/template_ast.ts#L219
- https://github.com/angular/angular/blob/master/packages/compiler/src/template_parser/binding_parser.ts#L26
答案 1 :(得分:2)
如果您查看其flex-layout
模块的源代码,您需要定义字符串中可以考虑的所有可能组合,并用逗号分隔它们:
@Directive({selector: `
[fxLayout],
[fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl],
[fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl],
[fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]
`})
在angular和它们的样式绑定的情况下,它们像Günter says确实
一样解析它