1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198<html lang="zh-CN"><head><meta charSet="UTF-8"/><meta content="text/html; charset=utf-8" http-equiv="Content-Type"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"/><meta name="apple-mobile-web-app-capable" content="yes"/><meta name="apple-mobile-web-app-status-bar-style" content="black"/><link rel="apple-touch-icon" sizes="180x180" href="../ydoc/images/apple-touch-icon.png"/><link rel="icon" type="image/png" sizes="32x32" href="../ydoc/images/favicon-32x32.png"/><link rel="icon" type="image/png" sizes="16x16" href="../ydoc/images/favicon-16x16.png"/><link rel="manifest" href="../ydoc/images/manifest.json"/><link rel="mask-icon" href="../ydoc/images/safari-pinned-tab.svg"" color="#5bbad5"/><meta name="theme-color" content="#ffffff"/><meta http-equiv="Cache-Control" content="no-transform"/><meta http-equiv="Cache-Control" content="no-siteapp"/><title>API-文档</title><link rel="stylesheet" href="../ydoc/styles/style.css"/><meta name="author" content="司徒正美"/><meta name="keywords"/><meta name="description" content="使用Reac微信小程序"/><meta id="releativePath" content=".."/><link rel="stylesheet" href="../ydoc/ydoc-plugin-search/search.css"/></head><body><div class="g-doc"><div class="m-aside"><div class="m-summary" id="js-menu"><div class="m-summary-content" id="js-menu-content"><div class="m-summary-block"><ul class="m-summary-list"><li class="item"><a href="intro.html#" class="href">介绍</a></li><li class="item"><a href="install.html" class="href">安装</a></li><li class="item"><a href="app.html" class="href">应用组件</a></li><li class="item"><a href="page.html" class="href">页面组件</a></li><li class="item"><a href="component.html" class="href">通用组件</a></li><li class="item"><a href="jsx.html" class="href">模板系统</a></li><li class="item"><a href="event.html" class="href">事件系统</a></li><li class="item"><a href="" class="href">API</a></li><li class="item"><a href="router.html" class="href">路由</a></li><li class="item"><a href="questions.html" class="href">常见问题</a></li><li class="item"><a href="about.html" class="href">关于</a></li></ul></div></div></div><div class="m-summary-switch" id="js-summary-switch"><svg viewBox="0 0 926.23699 573.74994" version="1.1" x="0px" y="0px" width="15" height="15" class="bottom"><g transform="translate(904.92214,-879.1482)"><path d="m -673.67664,1221.6502 -231.2455,-231.24803 55.6165,-55.627 c 30.5891,-30.59485 56.1806,-55.627 56.8701,-55.627 0.6894,0 79.8637,78.60862 175.9427,174.68583 l 174.6892,174.6858 174.6892,-174.6858 c 96.079,-96.07721 175.253196,-174.68583 175.942696,-174.68583 0.6895,0 26.281,25.03215 56.8701,55.627 l 55.6165,55.627 -231.245496,231.24803 c -127.185,127.1864-231.5279,231.248 -231.873,231.248 -0.3451,0 -104.688,-104.0616 -231.873,-231.248 z" fill="#fff"></path></g></svg><svg viewBox="0 0 926.23699 573.74994" version="1.1" x="0px" y="0px" width="15" height="15" class="top"><g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"><g id="aaa" fill="#fff" fill-rule="nonzero"><path d="M231.2455,342.502 L0,111.25397 L55.6165,55.62697 C86.2056,25.03212 111.7971,-2.99999998e-05 112.4866,-2.99999998e-05 C113.176,-2.99999998e-05 192.3503,78.60859 288.4293,174.6858 L463.1185,349.3716 L637.8077,174.6858 C733.8867,78.60859 813.060896,-2.99999997e-05 813.750396,-2.99999997e-05 C814.439896,-2.99999997e-05 840.031396,25.03212 870.620496,55.62697 L926.236996,111.25397 L694.9915,342.502 C567.8065,469.6884 463.4636,573.75 463.1185,573.75 C462.7734,573.75 358.4305,469.6884 231.2455,342.502 Z" id="Shape" transform="translate(463.118498, 286.874985) scale(1, -1) translate(-463.118498, -286.874985) "></path></g></g></svg></div></div><div class="m-main" id="js-panel"><header class="m-header" id="js-header"><div class="m-header-title js-logo"><a href="../index.html" target="_self"><img class="logo" width="36" src="../ydoc/images/dog@1x.png"/><h6 class="name">nanachi</h6></a></div><div><div class="m-search">
<div class="icon"></div>
<input type="text" class="input js-input" placeholder="搜索" />
<div class="m-search-result js-search-result"></div>
</div></div><nav class="m-header-nav js-nav"><ul class="m-header-items"><li class="item active"><a class="href" href="intro.html">文档</a></li></ul></nav><div id="js-nav-btn" class="m-header-btn ui-font-ydoc"></div></header><div class="m-content" id="js-content"><div id="markdown-body" class="m-content-container markdown-body"><h1>API</h1>
<table>
<thead>
<tr>
<th>API</th>
<th>类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td>React.createElement</td>
<td>内部 API</td>
<td>创建元素, 框架在内部会帮你调用这个方法,业务代码中不要用它</td>
</tr>
<tr>
<td>React.createRef</td>
<td> </td>
<td>不存在</td>
</tr>
<tr>
<td>React.forwardRef</td>
<td> </td>
<td>不存在</td>
</tr>
<tr>
<td>React.wx</td>
<td> </td>
<td>相当于微信的 wx,对里面许多方法做了 Promise 处理</td>
</tr>
<tr>
<td>React.getApp</td>
<td> </td>
<td>相当于微信的 getApp</td>
</tr>
<tr>
<td>React.getCurrentPages</td>
<td> </td>
<td>相当于微信的 geCurrentPage</td>
</tr>
<tr>
<td>React.Component</td>
<td> </td>
<td>所有组件的基类</td>
</tr>
<tr>
<td>React.toComponent</td>
<td>内部 API</td>
<td>用来创建组件</td>
</tr>
<tr>
<td>React.toRenderProps</td>
<td>内部 API</td>
<td>用来代替 render 属性对应的函数</td>
</tr>
<tr>
<td>React.toClass</td>
<td>内部 API</td>
<td>用来转译 es6 类</td>
</tr>
<tr>
<td>React.toStyle</td>
<td>内部 API</td>
<td>用来转译样式</td>
</tr>
<tr>
<td>React.toPage</td>
<td>内部 API</td>
<td>页面组件会自动在底部添加这方法</td>
</tr>
<tr>
<td>componentDidShow</td>
<td>页面组件的生命周期钩子</td>
<td>相当于 onShow</td>
</tr>
<tr>
<td>componentDidHide</td>
<td>页面组件的生命周期钩子</td>
<td>相当于 onHide</td>
</tr>
<tr>
<td>onPageScroll</td>
<td>页面组件的事件</td>
<td>监听用户滑动页面事件</td>
</tr>
<tr>
<td>onShareAppMessage</td>
<td>页面组件的事件</td>
<td>监听用户点击页面内转发按钮(<code><button></code> 组件 open-type="share")或右上角菜单“转发”按钮的行为,并自定义转发内容。<br>注意:只有定义了此事件处理函数,右上角菜单才会显示“转发”按钮</td>
</tr>
<tr>
<td>onReachBottom</td>
<td>页面组件的事件</td>
<td>监听用户上拉触底事件</td>
</tr>
<tr>
<td>onPullDownRefresh</td>
<td>页面组件的事件</td>
<td>监听用户下拉刷新事件</td>
</tr>
<tr>
<td>componentWillMount</td>
<td>组件的生命周期钩子</td>
<td>页面组件的 props 中有 path, query 等路由相关信息</td>
</tr>
<tr>
<td>componentWillUpdate</td>
<td>组件的生命周期钩子</td>
<td></td>
</tr>
<tr>
<td>componentDidMount</td>
<td>组件的生命周期钩子</td>
<td></td>
</tr>
<tr>
<td>componentDidUpdate</td>
<td>组件的生命周期钩子</td>
<td></td>
</tr>
<tr>
<td>componentWillRecieveProps</td>
<td>组件的生命周期钩子</td>
<td></td>
</tr>
<tr>
<td>componentWillUnmount</td>
<td>组件的生命周期钩子</td>
<td></td>
</tr>
<tr>
<td>shouldComponentUpdate</td>
<td>组件的生命周期钩子</td>
<td></td>
</tr>
<tr>
<td>componentDidCatch</td>
<td>组件的生命周期钩子</td>
<td></td>
</tr>
<tr>
<td>getSnapshotBeforeUpdate</td>
<td>组件的生命周期钩子</td>
<td></td>
</tr>
<tr>
<td>getDerivedStateFromProps</td>
<td>组件的生命周期钩子</td>
<td></td>
</tr>
<tr>
<td>getDerivedStateFromCatch</td>
<td>组件的生命周期钩子</td>
<td></td>
</tr>
<tr>
<td>getChildContext</td>
<td>组件的方法</td>
<td></td>
</tr>
<tr>
<td>setState</td>
<td>组件的方法</td>
<td>更新页面</td>
</tr>
<tr>
<td>forceUpdate</td>
<td>组件的方法</td>
<td>更新页面</td>
</tr>
<tr>
<td>refs</td>
<td>组件实例上的对象</td>
<td>里面保存着子组件的实例(由于没有 DOM,对于普通标签来说, <br>虽然也能保存着它的虚拟 DOM )</td>
</tr>
<tr>
<td>render</td>
<td>组件的方法</td>
<td>里面必须使用 JSX ,其他方法不能存在 JSX,不能显式使用 createElement</td>
</tr>
</tbody>
</table>
</div><div class="m-content-container m-paging"><div class="m-paging-prev m-paging-item"><a href="event.html" class="href"><span class="ui-font-ydoc"></span>事件系统</a></div><div class="m-paging-next m-paging-item"><a href="router.html" class="href">路由<span class="ui-font-ydoc"></span></a></div></div></div></div></div><div></div><script>
var $content = document.getElementById('js-content');
var $summaryItems = Array.prototype.slice.call(document.querySelectorAll('#js-menu .href'));
var $menu = document.getElementById('js-menu');
if ($menu && sessionStorage.menuScrollTop) {
$menu.scrollTop = sessionStorage.menuScrollTop;
}
// 刷新页面但不切换 pathname 的时候,内容区恢复到记忆的高度
if ($content && sessionStorage.contentScrollTop && window.location.pathname == sessionStorage.locationPathname) {
$content.scrollTop = sessionStorage.contentScrollTop;
}
sessionStorage.setItem('locationPathname', window.location.pathname);</script><script src="../ydoc/scripts/plugins/dollar.min.js"></script><script src="../ydoc/scripts/plugins/responsive-nav.min.js"></script><script src="../ydoc/scripts/plugins/slideout.min.js"></script><script src="../ydoc/scripts/app.js"></script><script src="../ydoc/ydoc-plugin-search/core.js"></script><script src="../ydoc/ydoc-plugin-search/search.js"></script><script src="../search_json.js"></script></body></html>