trait Binding[+A] extends Watchable[A]
A data binding expression that represents a value that automatically recalculates when its dependencies change.
Author:
杨博 (Yang Bo) <[email protected]>
- Source
- Binding.scala
You may create a data binding expression via
Binding { ??? }
block or@dom
annotation.val bindingInt: Binding[Int] = Binding { 100 }
@dom val bindingBr: Binding[HTMLBRElement] = <br/>
A data binding expression may depend on other binding expressions via bind method:
val bindingString: Binding[String] = Binding { bindingInt.bind.toString }
- Alphabetic
- By Inheritance
- Binding
- Watchable
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def addChangedListener(listener: ChangedListener[A]): Unit
- Attributes
- protected
- abstract def removeChangedListener(listener: ChangedListener[A]): Unit
- Attributes
- protected
- abstract def value: A
Returns the current value of this Binding
Returns the current value of this Binding
- Attributes
- protected
- Note
This method must not be invoked inside a
@dom
method body or aBinding { ... }
block..
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- def +(other: String): String
- def ->[B](y: B): (Binding[A], B)
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- final macro def bind: A
Returns the current value of this Binding and marks the current
@dom
method depend on this Binding.Returns the current value of this Binding and marks the current
@dom
method depend on this Binding.Each time the value changes, in the current
@dom
method, all code after the currentbind
expression will be re-evaluated if the current@dom
method is watching. However, code in current@dom
method and before the currentbind
expression will not be re-evaluated. The above rule is not applied to DOM nodes created by XHTML literal. Abind
expression under a DOM node does not affect siblings and parents of that node.- Note
This method must be invoked inside a
@dom
method body or aBinding { ... }
block..
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- def ensuring(cond: (Binding[A]) => Boolean, msg: => Any): Binding[A]
- def ensuring(cond: (Binding[A]) => Boolean): Binding[A]
- def ensuring(cond: Boolean, msg: => Any): Binding[A]
- def ensuring(cond: Boolean): Binding[A]
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def formatted(fmtstr: String): String
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def unwatch(): Unit
Disable automatic recalculation.
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def watch(): Unit
Enable automatic recalculation.
Enable automatic recalculation.
You may invoke this method more than once. Then, when you want to disable automatic recalculation, you must invoke unwatch same times as the number of calls to this method.
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
- def →[B](y: B): (Binding[A], B)
- Implicit
- This member is added by an implicit conversion from Binding[A] toArrowAssoc[Binding[A]] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @deprecated
- Deprecated
(Since version 2.13.0) Use
->
instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.