new Page(initialState)
页面
Parameters:
Name | Type | Description |
---|---|---|
initialState |
* | 初始数据状态 |
Methods
(static) extend(protonon-null) → {function}
生成Page子类
Parameters:
Name | Type | Description |
---|---|---|
proto |
Object | 扩展Page的配置 |
Returns:
- Type
- function
createElement() → {ReactElement}
使用当前上下文中的数据,创建一个可提渲染使用的react元素
Returns:
- Type
- ReactElement
dispose() → {module:Page}
销毁页面
Returns:
- Type
- module:Page
getInitialState(request) → {Promise}
获取页面初始数据
页面在启动时,一般都会需要通过操作资源来获取数据作为初始数据
并且,这个过程一般还需要使用当前`请求`来完成决策
在app中接收到请求后会加载路由中指定的Page模块,将其实例化后,执行此方法
Parameters:
Name | Type | Description |
---|---|---|
request |
Object | 请求 |
Returns:
- Type
- Promise
getState() → {*}
返回当前上下文中的所有数据
此方法用于将服务器端的页面数据,同步到客户端上
Returns:
- Type
- *
init() → {module:Page}
初始化
此方法只会被调用一次
处理请求的过程中,在页面实例化后,会被调用到此方法
此方法会派发一个init动作,并附带有getInitialState方法所返回的数据
init动作提供给页面的初始数据剪裁的时机
但是只有在execute的情况下才会被调用,
我们在bootstrap时传入的initialState是已经是剪裁好的数据
也就是在server端预渲染后向client端同步数据状态的场景
Returns:
- Type
- module:Page
render(target) → {module:Page}
使用当前的上下文中的数据,将页面渲染到指定的元素
只能在客户端使用
Parameters:
Name | Type | Description |
---|---|---|
target |
Element | DOM元素 |
Returns:
- Type
- module:Page
renderToString() → {string}
使用当前的上下文中的数据,将页面渲染成字符串
Returns:
- Type
- string