2017-10-21 61 views
0

Je ne comprends pas pourquoi cette "propriété modifiée" via @observable ne fonctionne pas, la méthode stringValueChanged() n'est pas appelée. Qu'est-ce que j'oublie ici? (L'ensemble de liaison ne fonctionne pas ici.)aurelia: liaison et @observable ne fonctionnant pas

monnaie-control.ts

import { bindable, observable } from 'aurelia-framework'; 

export class CurrencyControl { 

    @bindable 
    value: number; 

    @observable 
    stringValue: string; 

    constructor() { 
    } 

    valueChanged(newValue: number, oldValue: number) { 
     alert('value changed'); 
    } 

    stringValueChanged(newValue: string, oldValue: string) { 
     alert('stringValueChanged changed'); 
    } 
} 

monnaie-control.html

<template> 

    <require from="./currency-control.css"></require> 

    <div class="input-group"> 
     <div class="input-group-addon">&euro;</div> 
     <input type="text" maxlength="5" pattern="\d*" class="form-control" value.bind="stringValue" /> 
    </div> 

</template> 

Répondre

0

ma faute! Dans le composant qui utilise le CurrencyControl I requis le html CurrencyControl:

<template> 
    <require from="../currency-control/currency-control.html"></require> 

au lieu du composant:

<template> 
    <require from="../currency-control/currency-control"></require>