Initialization"
Tmillsclare (talk | contribs) m |
|||
Line 32: | Line 32: | ||
= @init at Form Binding = | = @init at Form Binding = | ||
− | We can also use the initial binding on the form binding | + | We can also use the initial binding on the form binding to fill in predefined value. |
+ | <source lang="xml"> | ||
+ | |||
+ | <div form="@id('fx') @init(vm.defaultOrder) @load(vm.order) @save(vm.order, before='compute')"> | ||
+ | |||
+ | </div> | ||
+ | </source> | ||
+ | |||
+ | We'll describe more advanced control with <tt> @init </tt> in section [[ZK Developer's Reference/MVVM/DataBinding/Form Binding]]. | ||
=Version History= | =Version History= |
Revision as of 08:38, 10 February 2012
We can initialize any component's attribute by initial binding: @init . It loads ViewModel's property once at the beginning then the property won't be synchronized by binder during user interaction. But EL evaluation's result we expect in initial binding annotation is different for attribute "viewModel" and "form".
@init at viewModel Attribute
The first place we usually use this annotation is to assign a ViewModel to a component in viewModel attribute. When using in viewModel attribute, we should specify the full-qualified class name in a string literal in @init .
<window apply="org.zkoss.bind.BindComposer" viewModel="@id('vm') @init('foo.MyViewModel')">
</window>
The composer will resolve the string 'foo.MyViewModel' and create a object of it.
@init at Component's Attribute
It's common to use it to initialize a component's attribute with a constant value or a ViewModel's proeprty. The binder loads it once and doesn't synchronize it afterward during following user interaction.
<label value="@init(vm.message)"/>
<label value="@init(123)"/>
<checkbox checked="@init(true)"/>
@init at Form Binding
We can also use the initial binding on the form binding to fill in predefined value.
<div form="@id('fx') @init(vm.defaultOrder) @load(vm.order) @save(vm.order, before='compute')">
</div>
We'll describe more advanced control with @init in section ZK Developer's Reference/MVVM/DataBinding/Form Binding.
Version History
Version | Date | Content |
---|---|---|
6.0.0 | February 2012 | The MVVM was introduced. |