doc.55418a38.js 4.8 KB

1
  1. import{e as t,g as e,t as n,G as o,o as d}from"./vendor.21cda21c.js";const a={class:"markdown-body"},s=o('<h1>countdown组件</h1><h3>介绍</h3><h3>安装</h3><pre><code class="language-javascript">import { createApp } from &#39;vue&#39;;\n// vue\nimport { CountDown } from &#39;@nutui/nutui&#39;;\n\nconst app = createApp();\napp.use(CountDown);\n</code></pre><h3>基础用法</h3><pre><code class="language-html">&lt;nut-countdown :end-time=&quot;end&quot; &gt;&lt;/nut-countdown&gt;\n</code></pre><pre><code class="language-javascript">setup() {\n const state = reactive({\n end: Date.now() + 50 * 1000,\n });\n return {\n ...toRefs(state)\n };\n}\n</code></pre><h3>显示天</h3><pre><code class="language-html">&lt;nut-countdown :end-time=&quot;end&quot; show-days &gt;&lt;/nut-countdown&gt;\n</code></pre><h3>以服务端的时间为准</h3><pre><code class="language-html">&lt;nut-countdown :start-time=&quot;serverTime&quot; :end-time=&quot;end&quot; show-days &gt;&lt;/nut-countdown&gt;\n</code></pre><pre><code class="language-javascript">setup() {\n const state = reactive({\n serverTime: Date.now() - 30 * 1000,\n end: Date.now() + 50 * 1000,\n });\n return {\n ...toRefs(state)\n };\n}\n</code></pre><h3>显示为 天时分秒</h3><pre><code class="language-html">&lt;nut-countdown show-days show-plain-text :end-time=&quot;end&quot;&gt;&lt;/nut-countdown&gt;\n</code></pre><pre><code class="language-javascript">setup() {\n const state = reactive({\n end: Date.now() + 50 * 1000,\n });\n return {\n ...toRefs(state)\n };\n}\n</code></pre><h3>异步更新结束时间</h3><pre><code class="language-html">&lt;nut-countdown show-days show-plain-text :end-time=&quot;asyncEnd&quot; &gt;&lt;/nut-countdown&gt;\n</code></pre><pre><code class="language-javascript">setup() {\n const state = reactive({\n asyncEnd: 0,\n });\n return {\n ...toRefs(state)\n };\n}\n</code></pre><h3>控制开始和暂停的倒计时</h3>',19),r={class:"language-html"},u=o('<pre><code class="language-javascript">setup() {\n const state = reactive({\n paused: false,\n end: Date.now() + 50 * 1000,\n });\n\n const toggle = ()=&gt; {\n state.paused = !state.paused;\n }\n const onpaused = (v)=&gt; {\n console.log(&#39;paused: &#39;, v);\n }\n const onrestart = (v)=&gt; {\n console.log(&#39;restart: &#39;, v);\n }\n return {\n toggle,\n onpaused,\n onrestart,\n ...toRefs(state)\n };\n}\n</code></pre><h3>自定义展示</h3><pre><code class="language-html">&lt;nut-countdown v-model=&quot;resetTime&quot; :endTime=&quot;end&quot;&gt;\n &lt;div class=&quot;countdown-part-box&quot;&gt;\n &lt;div class=&quot;part-item-symbol&quot;&gt; resetTime.d 天&lt;/div&gt;\n &lt;div class=&quot;part-item h&quot;&gt; resetTime.h &lt;/div&gt;\n &lt;span class=&quot;part-item-symbol&quot;&gt;:&lt;/span&gt;\n &lt;div class=&quot;part-item m&quot;&gt; resetTime.m &lt;/div&gt;\n &lt;span class=&quot;part-item-symbol&quot;&gt;:&lt;/span&gt;\n &lt;div class=&quot;part-item s&quot;&gt; resetTime.s &lt;/div&gt;\n &lt;/div&gt;\n&lt;/nut-countdown&gt;\n</code></pre><pre><code class="language-javascript">setup() {\n const state = reactive({\n end: Date.now() + 50 * 1000,\n resetTime: {\n d: &#39;1&#39;,\n h: &#39;00&#39;,\n m: &#39;00&#39;,\n s: &#39;00&#39;\n }\n });\n return {\n ...toRefs(state)\n };\n}\n</code></pre><h3>API</h3><h3>Props</h3><table><thead><tr><th>字段</th><th>说明</th><th>类型</th><th>默认值</th></tr></thead><tbody><tr><td>v-model</td><td>当前时间,自定义展示内容时生效</td><td>Object</td><td>{}</td></tr><tr><td>start-time</td><td>开始时间</td><td>String, Number</td><td>Date.now()</td></tr><tr><td>end-time</td><td>结束时间</td><td>String, Number</td><td>Date.now()</td></tr><tr><td>show-days</td><td>是否显示天</td><td>Boolean</td><td>false</td></tr><tr><td>show-plain-text</td><td>显示为纯文本</td><td>Boolean</td><td>false</td></tr><tr><td>paused</td><td>是否暂停</td><td>Boolean</td><td>false</td></tr></tbody></table><h3>Event</h3><table><thead><tr><th>字段</th><th>说明</th><th>回调参数</th></tr></thead><tbody><tr><td>on-end</td><td>倒计时结束时</td><td>剩余时间戳</td></tr><tr><td>on-paused</td><td>暂停时</td><td>剩余时间戳</td></tr><tr><td>on-restart</td><td>暂停时</td><td>剩余时间戳</td></tr></tbody></table>',9),l={setup:o=>(o,l)=>(d(),t("div",a,[s,e("pre",null,[e("code",r,'<nut-cell>\n <nut-countdown :endTime="end" :paused="paused" @on-paused="onpaused" @on-restart="onrestart" />\n <div style="position:absolute;right:10px;top:9px">\n <nut-button type="primary" size=\'small\' @click="toggle">'+n(o.paused?"start":"stop")+"</nut-button>\n </div>\n</nut-cell>\n",1)]),u]))};export{l as default};