• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# dialog<a name="ZH-CN_TOPIC_0000001209210697"></a>
2
3自定义弹窗容器。
4
5## 权限列表<a name="zh-cn_topic_0000001173324657_section11257113618419"></a>
6
78
9## 子组件<a name="zh-cn_topic_0000001173324657_section9288143101012"></a>
10
11支持单个子组件。
12
13## 属性<a name="zh-cn_topic_0000001173324657_section2907183951110"></a>
14
15除支持[通用属性](js-components-common-attributes.md)外,支持如下属性:
16
17<a name="zh-cn_topic_0000001173324657_tb330011ff53049a69f27cec012adf8c1"></a>
18<table><thead align="left"><tr id="zh-cn_topic_0000001173324657_r4301f3a3b24c499c9bfc42b76ab785f9"><th class="cellrowborder" valign="top" width="19.598040195980403%" id="mcps1.1.6.1.1"><p id="zh-cn_topic_0000001173324657_a9ba8c579217b4b8b841b035f1d28b20e"><a name="zh-cn_topic_0000001173324657_a9ba8c579217b4b8b841b035f1d28b20e"></a><a name="zh-cn_topic_0000001173324657_a9ba8c579217b4b8b841b035f1d28b20e"></a>名称</p>
19</th>
20<th class="cellrowborder" valign="top" width="11.178882111788822%" id="mcps1.1.6.1.2"><p id="zh-cn_topic_0000001173324657_a633002333b024497914a4b172446f14e"><a name="zh-cn_topic_0000001173324657_a633002333b024497914a4b172446f14e"></a><a name="zh-cn_topic_0000001173324657_a633002333b024497914a4b172446f14e"></a>类型</p>
21</th>
22<th class="cellrowborder" valign="top" width="9.899010098990102%" id="mcps1.1.6.1.3"><p id="zh-cn_topic_0000001173324657_a4950f7884c6540b9ad523ac34657d952"><a name="zh-cn_topic_0000001173324657_a4950f7884c6540b9ad523ac34657d952"></a><a name="zh-cn_topic_0000001173324657_a4950f7884c6540b9ad523ac34657d952"></a>默认值</p>
23</th>
24<th class="cellrowborder" valign="top" width="7.56924307569243%" id="mcps1.1.6.1.4"><p id="zh-cn_topic_0000001173324657_p58189597166"><a name="zh-cn_topic_0000001173324657_p58189597166"></a><a name="zh-cn_topic_0000001173324657_p58189597166"></a>必填</p>
25</th>
26<th class="cellrowborder" valign="top" width="51.754824517548236%" id="mcps1.1.6.1.5"><p id="zh-cn_topic_0000001173324657_a1313564aa9404a338447087d5918c17d"><a name="zh-cn_topic_0000001173324657_a1313564aa9404a338447087d5918c17d"></a><a name="zh-cn_topic_0000001173324657_a1313564aa9404a338447087d5918c17d"></a>描述</p>
27</th>
28</tr>
29</thead>
30<tbody><tr id="zh-cn_topic_0000001173324657_r06a481428e8d455fba919d3d4618be31"><td class="cellrowborder" valign="top" width="19.598040195980403%" headers="mcps1.1.6.1.1 "><p id="zh-cn_topic_0000001173324657_adb8a73146d764f2aab50fc046169ab26"><a name="zh-cn_topic_0000001173324657_adb8a73146d764f2aab50fc046169ab26"></a><a name="zh-cn_topic_0000001173324657_adb8a73146d764f2aab50fc046169ab26"></a>dragable<sup id="zh-cn_topic_0000001173324657_sup999420218191"><a name="zh-cn_topic_0000001173324657_sup999420218191"></a><a name="zh-cn_topic_0000001173324657_sup999420218191"></a><span>7+</span></sup></p>
31</td>
32<td class="cellrowborder" valign="top" width="11.178882111788822%" headers="mcps1.1.6.1.2 "><p id="zh-cn_topic_0000001173324657_a06898db2627246f78e85d4fbadeee85c"><a name="zh-cn_topic_0000001173324657_a06898db2627246f78e85d4fbadeee85c"></a><a name="zh-cn_topic_0000001173324657_a06898db2627246f78e85d4fbadeee85c"></a>boolean</p>
33</td>
34<td class="cellrowborder" valign="top" width="9.899010098990102%" headers="mcps1.1.6.1.3 "><p id="zh-cn_topic_0000001173324657_ae685ead324a647bcba1bbb45c9402dd6"><a name="zh-cn_topic_0000001173324657_ae685ead324a647bcba1bbb45c9402dd6"></a><a name="zh-cn_topic_0000001173324657_ae685ead324a647bcba1bbb45c9402dd6"></a>false</p>
35</td>
36<td class="cellrowborder" valign="top" width="7.56924307569243%" headers="mcps1.1.6.1.4 "><p id="zh-cn_topic_0000001173324657_p78183594166"><a name="zh-cn_topic_0000001173324657_p78183594166"></a><a name="zh-cn_topic_0000001173324657_p78183594166"></a>否</p>
37</td>
38<td class="cellrowborder" valign="top" width="51.754824517548236%" headers="mcps1.1.6.1.5 "><p id="zh-cn_topic_0000001173324657_a692121725a9b4ebbae65cd22b94b672e"><a name="zh-cn_topic_0000001173324657_a692121725a9b4ebbae65cd22b94b672e"></a><a name="zh-cn_topic_0000001173324657_a692121725a9b4ebbae65cd22b94b672e"></a>设置对话框是否支持拖拽。</p>
39</td>
40</tr>
41</tbody>
42</table>
43
44>![](../../public_sys-resources/icon-note.gif) **说明:**
45>-   弹窗类组件不支持focusable、click-effect属性。
46
47## 样式<a name="zh-cn_topic_0000001173324657_section5775351116"></a>
48
49仅支持[通用样式](js-components-common-styles.md)中的width、height、margin、margin-\[left|top|right|bottom\]、margin-\[start|end\]样式。
50
51## 事件<a name="zh-cn_topic_0000001173324657_section8562129182916"></a>
52
53不支持[通用事件](js-components-common-events.md),仅支持如下事件:
54
55<a name="zh-cn_topic_0000001173324657_table20562102982910"></a>
56<table><thead align="left"><tr id="zh-cn_topic_0000001173324657_row9562162932910"><th class="cellrowborder" valign="top" width="18.459999999999997%" id="mcps1.1.4.1.1"><p id="zh-cn_topic_0000001173324657_p195626291296"><a name="zh-cn_topic_0000001173324657_p195626291296"></a><a name="zh-cn_topic_0000001173324657_p195626291296"></a>名称</p>
57</th>
58<th class="cellrowborder" valign="top" width="30.769999999999996%" id="mcps1.1.4.1.2"><p id="zh-cn_topic_0000001173324657_p185622029202914"><a name="zh-cn_topic_0000001173324657_p185622029202914"></a><a name="zh-cn_topic_0000001173324657_p185622029202914"></a>参数</p>
59</th>
60<th class="cellrowborder" valign="top" width="50.77%" id="mcps1.1.4.1.3"><p id="zh-cn_topic_0000001173324657_p9562132915297"><a name="zh-cn_topic_0000001173324657_p9562132915297"></a><a name="zh-cn_topic_0000001173324657_p9562132915297"></a>描述</p>
61</th>
62</tr>
63</thead>
64<tbody><tr id="zh-cn_topic_0000001173324657_row7562729142911"><td class="cellrowborder" valign="top" width="18.459999999999997%" headers="mcps1.1.4.1.1 "><p id="zh-cn_topic_0000001173324657_p145622291299"><a name="zh-cn_topic_0000001173324657_p145622291299"></a><a name="zh-cn_topic_0000001173324657_p145622291299"></a>cancel</p>
65</td>
66<td class="cellrowborder" valign="top" width="30.769999999999996%" headers="mcps1.1.4.1.2 "><p id="zh-cn_topic_0000001173324657_p356210295295"><a name="zh-cn_topic_0000001173324657_p356210295295"></a><a name="zh-cn_topic_0000001173324657_p356210295295"></a>-</p>
67</td>
68<td class="cellrowborder" valign="top" width="50.77%" headers="mcps1.1.4.1.3 "><p id="zh-cn_topic_0000001173324657_p55621629122916"><a name="zh-cn_topic_0000001173324657_p55621629122916"></a><a name="zh-cn_topic_0000001173324657_p55621629122916"></a>用户点击非dialog区域触发取消弹窗时触发的事件。</p>
69</td>
70</tr>
71<tr id="zh-cn_topic_0000001173324657_row154462392615"><td class="cellrowborder" valign="top" width="18.459999999999997%" headers="mcps1.1.4.1.1 "><p id="zh-cn_topic_0000001173324657_p84461834266"><a name="zh-cn_topic_0000001173324657_p84461834266"></a><a name="zh-cn_topic_0000001173324657_p84461834266"></a>show<sup id="zh-cn_topic_0000001173324657_sup2397204717198"><a name="zh-cn_topic_0000001173324657_sup2397204717198"></a><a name="zh-cn_topic_0000001173324657_sup2397204717198"></a><span>7+</span></sup></p>
72</td>
73<td class="cellrowborder" valign="top" width="30.769999999999996%" headers="mcps1.1.4.1.2 "><p id="zh-cn_topic_0000001173324657_p164468315263"><a name="zh-cn_topic_0000001173324657_p164468315263"></a><a name="zh-cn_topic_0000001173324657_p164468315263"></a>-</p>
74</td>
75<td class="cellrowborder" valign="top" width="50.77%" headers="mcps1.1.4.1.3 "><p id="zh-cn_topic_0000001173324657_p204465311269"><a name="zh-cn_topic_0000001173324657_p204465311269"></a><a name="zh-cn_topic_0000001173324657_p204465311269"></a>对话框弹出时触发该事件。</p>
76</td>
77</tr>
78<tr id="zh-cn_topic_0000001173324657_row28470175299"><td class="cellrowborder" valign="top" width="18.459999999999997%" headers="mcps1.1.4.1.1 "><p id="zh-cn_topic_0000001173324657_p2848161792917"><a name="zh-cn_topic_0000001173324657_p2848161792917"></a><a name="zh-cn_topic_0000001173324657_p2848161792917"></a>close<sup id="zh-cn_topic_0000001173324657_sup4231174871918"><a name="zh-cn_topic_0000001173324657_sup4231174871918"></a><a name="zh-cn_topic_0000001173324657_sup4231174871918"></a><span>7+</span></sup></p>
79</td>
80<td class="cellrowborder" valign="top" width="30.769999999999996%" headers="mcps1.1.4.1.2 "><p id="zh-cn_topic_0000001173324657_p128481917132913"><a name="zh-cn_topic_0000001173324657_p128481917132913"></a><a name="zh-cn_topic_0000001173324657_p128481917132913"></a>-</p>
81</td>
82<td class="cellrowborder" valign="top" width="50.77%" headers="mcps1.1.4.1.3 "><p id="zh-cn_topic_0000001173324657_p5848121742920"><a name="zh-cn_topic_0000001173324657_p5848121742920"></a><a name="zh-cn_topic_0000001173324657_p5848121742920"></a>对话框关闭时触发该事件。</p>
83</td>
84</tr>
85</tbody>
86</table>
87
88## 方法<a name="zh-cn_topic_0000001173324657_section11753103216253"></a>
89
90不支持[通用方法](js-components-common-methods.md),仅支持如下方法。
91
92<a name="zh-cn_topic_0000001173324657_table20753173210251"></a>
93<table><thead align="left"><tr id="zh-cn_topic_0000001173324657_row575363214257"><th class="cellrowborder" valign="top" width="18.459999999999997%" id="mcps1.1.4.1.1"><p id="zh-cn_topic_0000001173324657_p157531032112517"><a name="zh-cn_topic_0000001173324657_p157531032112517"></a><a name="zh-cn_topic_0000001173324657_p157531032112517"></a>名称</p>
94</th>
95<th class="cellrowborder" valign="top" width="30.769999999999996%" id="mcps1.1.4.1.2"><p id="zh-cn_topic_0000001173324657_p77531632132518"><a name="zh-cn_topic_0000001173324657_p77531632132518"></a><a name="zh-cn_topic_0000001173324657_p77531632132518"></a>参数</p>
96</th>
97<th class="cellrowborder" valign="top" width="50.77%" id="mcps1.1.4.1.3"><p id="zh-cn_topic_0000001173324657_p147531232132512"><a name="zh-cn_topic_0000001173324657_p147531232132512"></a><a name="zh-cn_topic_0000001173324657_p147531232132512"></a>描述</p>
98</th>
99</tr>
100</thead>
101<tbody><tr id="zh-cn_topic_0000001173324657_row15753113210251"><td class="cellrowborder" valign="top" width="18.459999999999997%" headers="mcps1.1.4.1.1 "><p id="zh-cn_topic_0000001173324657_p2314135812511"><a name="zh-cn_topic_0000001173324657_p2314135812511"></a><a name="zh-cn_topic_0000001173324657_p2314135812511"></a>show</p>
102</td>
103<td class="cellrowborder" valign="top" width="30.769999999999996%" headers="mcps1.1.4.1.2 "><p id="zh-cn_topic_0000001173324657_p7314115819256"><a name="zh-cn_topic_0000001173324657_p7314115819256"></a><a name="zh-cn_topic_0000001173324657_p7314115819256"></a>-</p>
104</td>
105<td class="cellrowborder" valign="top" width="50.77%" headers="mcps1.1.4.1.3 "><p id="zh-cn_topic_0000001173324657_p0314958162512"><a name="zh-cn_topic_0000001173324657_p0314958162512"></a><a name="zh-cn_topic_0000001173324657_p0314958162512"></a>弹出对话框。</p>
106</td>
107</tr>
108<tr id="zh-cn_topic_0000001173324657_row393410526251"><td class="cellrowborder" valign="top" width="18.459999999999997%" headers="mcps1.1.4.1.1 "><p id="zh-cn_topic_0000001173324657_p7314358182512"><a name="zh-cn_topic_0000001173324657_p7314358182512"></a><a name="zh-cn_topic_0000001173324657_p7314358182512"></a>close</p>
109</td>
110<td class="cellrowborder" valign="top" width="30.769999999999996%" headers="mcps1.1.4.1.2 "><p id="zh-cn_topic_0000001173324657_p1231455814253"><a name="zh-cn_topic_0000001173324657_p1231455814253"></a><a name="zh-cn_topic_0000001173324657_p1231455814253"></a>-</p>
111</td>
112<td class="cellrowborder" valign="top" width="50.77%" headers="mcps1.1.4.1.3 "><p id="zh-cn_topic_0000001173324657_p10314105842512"><a name="zh-cn_topic_0000001173324657_p10314105842512"></a><a name="zh-cn_topic_0000001173324657_p10314105842512"></a>关闭对话框。</p>
113</td>
114</tr>
115</tbody>
116</table>
117
118>![](../../public_sys-resources/icon-note.gif) **说明:**
119>dialog属性、样式均不支持动态更新。
120
121## 示例<a name="zh-cn_topic_0000001173324657_section6663311114620"></a>
122
123```
124<!-- xxx.hml -->
125<div class="doc-page">
126  <div class="btn-div">
127    <button type="capsule" value="Click here" class="btn" onclick="showDialog"></button>
128  </div>
129  <dialog id="simpledialog" class="dialog-main" oncancel="cancelDialog">
130    <div class="dialog-div">
131      <div class="inner-txt">
132        <text class="txt">Simple dialog</text>
133      </div>
134      <div class="inner-btn">
135        <button type="capsule" value="Cancel" onclick="cancelSchedule" class="btn-txt"></button>
136        <button type="capsule" value="Confirm" onclick="setSchedule" class="btn-txt"></button>
137      </div>
138    </div>
139  </dialog>
140</div>
141```
142
143```
144/* xxx.css */
145.doc-page {
146  flex-direction: column;
147  justify-content: center;
148  align-items: center;
149}
150.btn-div {
151  width: 100%;
152  height: 200px;
153  flex-direction: column;
154  align-items: center;
155  justify-content: center;
156}
157.btn {
158  background-color: #F2F2F2;
159  text-color: #0D81F2;
160}
161.txt {
162  color: #000000;
163  font-weight: bold;
164  font-size: 39px;
165}
166.dialog-main {
167  width: 500px;
168}
169.dialog-div {
170  flex-direction: column;
171  align-items: center;
172}
173.inner-txt {
174  width: 400px;
175  height: 160px;
176  flex-direction: column;
177  align-items: center;
178  justify-content: space-around;
179}
180.inner-btn {
181  width: 400px;
182  height: 120px;
183  justify-content: space-around;
184  align-items: center;
185}
186.btn-txt {
187  background-color: #F2F2F2;
188  text-color: #0D81F2;
189}
190```
191
192```
193// xxx.js
194import prompt from '@system.prompt';
195
196export default {
197  showDialog(e) {
198    this.$element('simpledialog').show()
199  },
200  cancelDialog(e) {
201    prompt.showToast({
202      message: 'Dialog cancelled'
203    })
204  },
205  cancelSchedule(e) {
206    this.$element('simpledialog').close()
207    prompt.showToast({
208      message: 'Successfully cancelled'
209    })
210  },
211  setSchedule(e) {
212    this.$element('simpledialog').close()
213    prompt.showToast({
214      message: 'Successfully confirmed'
215    })
216  }
217}
218```
219
220![](figures/GIF6.gif)
221
222