作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个组件 toolbar
带模板:
<div *ngFor="let item of items" class="toolbar__item">
<a href="{{ item.url }}" [attributes]="item.attributes">{{ item.label }}</a>
</div>
item.options
到
A
元素。如何使用 Angular 5 做到这一点?
const items = [
{ 'url': 'someurl', 'label': 'Label', 'attributes': {'data-target': '#dropdown', 'data-toggle': 'dropdown'} }
]
最佳答案
我希望您可以创建一个指令来存储动态属性并将其分配给元素,但我尚未对其进行测试。
import {Directive, ElementRef, Input} from '@angular/core';
@Directive({
selector: '[dynamicAttributes]'
})
export class DynamicAttributesDirective {
@Input() dynamicAttributes: {[key: string]: string};
constructor(public element: ElementRef<HTMLElement>) {}
ngOnInit() {
Object.assign(this.element.nativeElement.attributes, this.dynamicAttributes)
}
}
<a href="{{item.url}}" [dynamicAttributes]="item.attributes">{{item.label}}</a>
关于angular - 如何将多个属性绑定(bind)到 Angular 5 组件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49768116/
我是一名优秀的程序员,十分优秀!