Directive now watches the model variable and updates appropriately