видИспользование Аурелия, как установить значение по умолчанию для пользовательского атрибута
<template>
<div single-value-attrib="${color}"></div>
<div single-value-attrib.bind="color"></div>
<input type="text" value.bind="color" />
</template>
вид-модель
export class SingleValueAttribCustomAttribute {
static inject = [Element];
color = 'orange';
constructor(element) {
this.element = element;
this.element.style.width = this.element.style.height = '100px';
}
bind() {
this.element.style.backgroundColor = this.value;
}
valueChanged(newValue, oldValue) {
this.element.style.backgroundColor = newValue;
}
}
Я ожидал, что color='orange';
в ViewModel будет отображаться в цвете на представлении, таким образом, установив цвет по умолчанию как оранжевый. Изменение цвета в поле ввода работает так, как ожидалось. Я знаю, что вы можете просто установить this.value
в качестве вашего значения по умолчанию, но я просто подумал, что привязка будет работать так же, как и в скелете-nav, где поля ввода имеют значения по умолчанию для firstName и lastName
Изменение цвета до значения = «оранжевый» не работает. Установка this.value = 'orange' в конструкторе также не работает, но имеет смысл, что он должен. Если я изменил this.value на this.myvalue и установил this.myvalue = 'orange', тогда он будет работать. – dan
Знаешь что? Вы правы. Я собираюсь обновить ответ правильно. :-) –
отлично работает, спасибо – dan