NgBooleanAttributeDirective class
Allows adding and removing the boolean attributes from the element.
Using <button disabled="{{false}}"> does not work since it would result
in <button disabled="false"> rather than <button>.
Browsers change behavior based on presence/absence of attribute rather the
its value.
For this reason we provide alternate ng-attribute directives to
add/remove boolean attributes such as <button ng-disabled="{{false}}">
which will result in proper removal of the attribute.
The full list of supported attributes are:
ng-checkedng-disabledng-multipleng-openng-readonlyng-requiredng-selected
@NgDirective(selector: '[ng-checked]', map: const {'ng-checked': '=>checked'})
@NgDirective(selector: '[ng-disabled]', map: const {'ng-disabled': '=>disabled'})
@NgDirective(selector: '[ng-multiple]', map: const {'ng-multiple': '=>multiple'})
@NgDirective(selector: '[ng-open]', map: const {'ng-open': '=>open'})
@NgDirective(selector: '[ng-readonly]', map: const {'ng-readonly': '=>readonly'})
@NgDirective(selector: '[ng-required]', map: const {'ng-required': '=>required'})
@NgDirective(selector: '[ng-selected]', map: const {'ng-selected': '=>selected'})
class NgBooleanAttributeDirective {
NodeAttrs attrs;
NgBooleanAttributeDirective(NodeAttrs this.attrs);
_setBooleanAttribute(name, value) => attrs[name] = (toBool(value) ? '' : null);
set checked(value) => _setBooleanAttribute('checked', value);
set disabled(value) => _setBooleanAttribute('disabled', value);
set multiple(value) => _setBooleanAttribute('multiple', value);
set open(value) => _setBooleanAttribute('open', value);
set readonly(value) => _setBooleanAttribute('readonly', value);
set required(value) => _setBooleanAttribute('required', value);
set selected(value) => _setBooleanAttribute('selected', value);
}
Constructors
Properties
dynamic set checked(value) #
set checked(value) => _setBooleanAttribute('checked', value);
dynamic set disabled(value) #
set disabled(value) => _setBooleanAttribute('disabled', value);
dynamic set multiple(value) #
set multiple(value) => _setBooleanAttribute('multiple', value);
dynamic set open(value) #
set open(value) => _setBooleanAttribute('open', value);
dynamic set readonly(value) #
set readonly(value) => _setBooleanAttribute('readonly', value);
dynamic set required(value) #
set required(value) => _setBooleanAttribute('required', value);
dynamic set selected(value) #
set selected(value) => _setBooleanAttribute('selected', value);