Angular2,添加站点范围的元素属性

时间:2017-02-20 21:50:46

标签: angular

我正在开发一个Angular2应用程序并使移动友好需要为所有html输入禁用自动完成,自动更正,自动调整和拼写检查。我不想为每个输入手动添加它,并希望实现动态站点方式方法。

例如在jQuery中我们可以$('input').attr('autocomplete','off')

如何在Angular2中完成相同的操作?要在整个网站上抓取任何输入并修改其属性吗?

1 个答案:

答案 0 :(得分:1)

您可以为此创建一个指令,Docs

它看起来像这样:需要为项目编辑的未经测试的代码

import {Directive, Input, Renderer} from '@angular/core';

@Directive({
  selector: 'input',
  host: {
    '(change)': 'setAtrributes()',
  }
})
export class InputDirective {
  @Input() mobile: boolean;

  constructor(private elementRef: ElementRef, private renderer: Renderer) {}

  setAtrributes() {
    this.renderer.setElementAttribute(this.elementRef.nativeElement, 'attributename', this.mobile ? 'off' : 'on');
    // Other attributes
  }
}