SplitRender

case class SplitRender[Page, View](pageSignal: Signal[Page], renderers: List[Renderer[Page, View]])
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any

Value members

Concrete methods

def collect[P <: Page : ClassTag](render: P => View): SplitRender[Page, View]

Add a standard renderer for Page type

Add a standard renderer for Page type

def collectSignal[P <: Page : ClassTag](render: Signal[P] => View): SplitRender[Page, View]

This renderer is efficient. It creates only a single element (instance of Out) that takes Signal[P] as a parameter instead of creating a Signal of elements.

This renderer is efficient. It creates only a single element (instance of Out) that takes Signal[P] as a parameter instead of creating a Signal of elements.

def collectSignalPF[P](pf: PartialFunction[Page, P])(render: Signal[P] => View): SplitRender[Page, View]
def collectStatic[P <: Page](page: P)(view: => View): SplitRender[Page, View]

Just a convenience method for static pages. page is expected to be an object.

Just a convenience method for static pages. page is expected to be an object.

def collectStaticPF(render: PartialFunction[Page, View]): SplitRender[Page, View]
def collectStaticStrict[P <: Page](page: P)(view: View): SplitRender[Page, View]

Similar to collectStatic, but evaluates view only once, when this method is called.

Similar to collectStatic, but evaluates view only once, when this method is called.

def signal: Signal[View]

Signal of output elements. Put this in your DOM with: child <-- SplitRender(page).collect(...).collectSignal(...).signal

Signal of output elements. Put this in your DOM with: child <-- SplitRender(page).collect(...).collectSignal(...).signal

Inherited methods

def productElementNames: Iterator[String]
Inherited from:
Product
def productIterator: Iterator[Any]
Inherited from:
Product