mirror of
https://gitee.com/vant-contrib/vant.git
synced 2025-04-06 03:57:59 +08:00
2 lines
10 KiB
JavaScript
2 lines
10 KiB
JavaScript
/*! For license information please see 7900.c47c9967.js.LICENSE.txt */
|
|
(self.webpackChunk=self.webpackChunk||[]).push([["7900"],{86161:function(s,n,a){"use strict";a.r(n);var t=a("80681");let l=["innerHTML"];n.default={setup:()=>({html:""}),render:()=>((0,t.wg)(),(0,t.iD)("div",{class:"van-doc-markdown-body",innerHTML:'<h1>FloatingBubble \u6D6E\u52A8\u6C14\u6CE1</h1>\n<div class="van-doc-card"><h3 id="jie-shao" tabindex="-1">\u4ECB\u7ECD</h3>\n<p>\u60AC\u6D6E\u5728\u9875\u9762\u8FB9\u7F18\u7684\u53EF\u70B9\u51FB\u6C14\u6CE1\u3002\u8BF7\u5347\u7EA7 <code>vant</code> \u5230 >= 4.6.0 \u7248\u672C\u6765\u4F7F\u7528\u8BE5\u7EC4\u4EF6\u3002</p>\n</div><div class="van-doc-card"><h3 id="yin-ru" tabindex="-1">\u5F15\u5165</h3>\n<p>\u901A\u8FC7\u4EE5\u4E0B\u65B9\u5F0F\u6765\u5168\u5C40\u6CE8\u518C\u7EC4\u4EF6\uFF0C\u66F4\u591A\u6CE8\u518C\u65B9\u5F0F\u8BF7\u53C2\u8003<a href="#/zh-CN/advanced-usage#zu-jian-zhu-ce" target="_blank">\u7EC4\u4EF6\u6CE8\u518C</a>\u3002</p>\n<pre><code class="language-js"><span class="hljs-keyword">import</span> { createApp } <span class="hljs-keyword">from</span> <span class="hljs-string">'vue'</span>;\n<span class="hljs-keyword">import</span> { <span class="hljs-title class_">FloatingBubble</span> } <span class="hljs-keyword">from</span> <span class="hljs-string">'vant'</span>;\n\n<span class="hljs-keyword">const</span> app = <span class="hljs-title function_">createApp</span>();\napp.<span class="hljs-title function_">use</span>(<span class="hljs-title class_">FloatingBubble</span>);\n</code></pre>\n</div><h2 id="dai-ma-yan-shi" tabindex="-1">\u4EE3\u7801\u6F14\u793A</h2>\n<div class="van-doc-card"><h3 id="ji-chu-yong-fa" tabindex="-1">\u57FA\u7840\u7528\u6CD5</h3>\n<p>\u6D6E\u52A8\u6C14\u6CE1\u9ED8\u8BA4\u5C55\u793A\u5728\u53F3\u4E0B\u89D2\uFF0C\u5E76\u5141\u8BB8\u5728 y \u8F74\u65B9\u5411\u4E0A\u4E0B\u62D6\u62FD\uFF0C\u4F60\u53EF\u4EE5\u901A\u8FC7 <code>icon</code> \u5C5E\u6027\u8BBE\u7F6E\u6C14\u6CE1\u7684\u56FE\u6807\u3002</p>\n<pre><code class="language-html"><span class="hljs-tag"><<span class="hljs-name">van-floating-bubble</span> <span class="hljs-attr">icon</span>=<span class="hljs-string">"chat"</span> @<span class="hljs-attr">click</span>=<span class="hljs-string">"onClick"</span> /></span>\n</code></pre>\n<pre><code class="language-js"><span class="hljs-keyword">import</span> { showToast } <span class="hljs-keyword">from</span> <span class="hljs-string">'vant'</span>;\n\n<span class="hljs-keyword">export</span> <span class="hljs-keyword">default</span> {\n <span class="hljs-title function_">setup</span>(<span class="hljs-params"></span>) {\n <span class="hljs-keyword">const</span> <span class="hljs-title function_">onClick</span> = (<span class="hljs-params"></span>) => {\n <span class="hljs-title function_">showToast</span>(<span class="hljs-string">'\u70B9\u51FB\u6C14\u6CE1'</span>);\n };\n <span class="hljs-keyword">return</span> { onClick };\n },\n};\n</code></pre>\n</div><div class="van-doc-card"><h3 id="zi-you-tuo-zhuai-he-ci-xi" tabindex="-1">\u81EA\u7531\u62D6\u62FD\u548C\u78C1\u5438</h3>\n<p>\u5141\u8BB8 x \u548C y \u8F74\u65B9\u5411\u62D6\u62FD\uFF0C\u5438\u9644\u5230 x \u8F74\u65B9\u5411\u6700\u8FD1\u4E00\u8FB9\u3002</p>\n<pre><code class="language-html"><span class="hljs-tag"><<span class="hljs-name">van-floating-bubble</span>\n <span class="hljs-attr">axis</span>=<span class="hljs-string">"xy"</span>\n <span class="hljs-attr">icon</span>=<span class="hljs-string">"chat"</span>\n <span class="hljs-attr">magnetic</span>=<span class="hljs-string">"x"</span>\n @<span class="hljs-attr">offset-change</span>=<span class="hljs-string">"onOffsetChange"</span>\n/></span>\n</code></pre>\n<pre><code class="language-js"><span class="hljs-keyword">import</span> { showToast } <span class="hljs-keyword">from</span> <span class="hljs-string">'vant'</span>;\n\n<span class="hljs-keyword">export</span> <span class="hljs-keyword">default</span> {\n <span class="hljs-title function_">setup</span>(<span class="hljs-params"></span>) {\n <span class="hljs-keyword">const</span> <span class="hljs-title function_">onOffsetChange</span> = (<span class="hljs-params">offset</span>) => {\n <span class="hljs-title function_">showToast</span>(<span class="hljs-string">`x: <span class="hljs-subst">${offset.x.toFixed(<span class="hljs-number">0</span>)}</span>, y: <span class="hljs-subst">${offset.y.toFixed(<span class="hljs-number">0</span>)}</span>`</span>);\n };\n <span class="hljs-keyword">return</span> { onOffsetChange };\n },\n};\n</code></pre>\n</div><div class="van-doc-card"><h3 id="shuang-xiang-bang-ding" tabindex="-1">\u53CC\u5411\u7ED1\u5B9A</h3>\n<p>\u4F7F\u7528 <code>v-model:offset</code> \u63A7\u5236 FloatingBubble \u7684\u4F4D\u7F6E\u3002</p>\n<pre><code class="language-html"><span class="hljs-tag"><<span class="hljs-name">van-floating-bubble</span> <span class="hljs-attr">v-model:offset</span>=<span class="hljs-string">"offset"</span> <span class="hljs-attr">axis</span>=<span class="hljs-string">"xy"</span> <span class="hljs-attr">icon</span>=<span class="hljs-string">"chat"</span> /></span>\n</code></pre>\n<pre><code class="language-js"><span class="hljs-keyword">import</span> { ref } <span class="hljs-keyword">from</span> <span class="hljs-string">'vue'</span>;\n\n<span class="hljs-keyword">export</span> <span class="hljs-keyword">default</span> {\n <span class="hljs-title function_">setup</span>(<span class="hljs-params"></span>) {\n <span class="hljs-keyword">const</span> offset = <span class="hljs-title function_">ref</span>({ <span class="hljs-attr">x</span>: <span class="hljs-number">200</span>, <span class="hljs-attr">y</span>: <span class="hljs-number">400</span> });\n <span class="hljs-keyword">return</span> { offset };\n },\n};\n</code></pre>\n</div><h2 id="api" tabindex="-1">API</h2>\n<div class="van-doc-card"><h3 id="props" tabindex="-1">Props</h3>\n<table>\n<thead>\n<tr>\n<th>\u53C2\u6570</th>\n<th>\u8BF4\u660E</th>\n<th>\u7C7B\u578B</th>\n<th>\u9ED8\u8BA4\u503C</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>v-model:offset</td>\n<td>\u63A7\u5236\u6C14\u6CE1\u4F4D\u7F6E</td>\n<td><em>OffsetType</em></td>\n<td><code>\u9ED8\u8BA4\u53F3\u4E0B\u89D2\u5750\u6807</code></td>\n</tr>\n<tr>\n<td>axis</td>\n<td>\u62D6\u62FD\u7684\u65B9\u5411\uFF0C<code>xy</code> \u4EE3\u8868\u81EA\u7531\u62D6\u62FD\uFF0C<code>lock</code> \u4EE3\u8868\u7981\u6B62\u62D6\u62FD</td>\n<td><em>\'x\' | \'y\' | \'xy\' | \'lock\'</em></td>\n<td><code>y</code></td>\n</tr>\n<tr>\n<td>magnetic</td>\n<td>\u81EA\u52A8\u78C1\u5438\u7684\u65B9\u5411</td>\n<td><em>\'x\' | \'y\'</em></td>\n<td>-</td>\n</tr>\n<tr>\n<td>icon</td>\n<td>\u6C14\u6CE1\u56FE\u6807\u540D\u79F0\u6216\u56FE\u7247\u94FE\u63A5\uFF0C\u7B49\u540C\u4E8E Icon \u7EC4\u4EF6\u7684 <a href="#/zh-CN/icon#props" target="_blank">name \u5C5E\u6027</a></td>\n<td><em>string</em></td>\n<td>-</td>\n</tr>\n<tr>\n<td>gap</td>\n<td>\u6C14\u6CE1\u4E0E\u7A97\u53E3\u7684\u6700\u5C0F\u95F4\u8DDD\uFF0C\u5355\u4F4D\u4E3A <code>px</code></td>\n<td><em>number</em></td>\n<td><code>24</code></td>\n</tr>\n<tr>\n<td>teleport</td>\n<td>\u6307\u5B9A\u6302\u8F7D\u7684\u8282\u70B9\uFF0C\u7B49\u540C\u4E8E Teleport \u7EC4\u4EF6\u7684 <a href="https://cn.vuejs.org/api/built-in-components.html#teleport" target="_blank">to \u5C5E\u6027</a></td>\n<td><em>string | Element</em></td>\n<td><code>body</code></td>\n</tr>\n</tbody>\n</table>\n</div><div class="van-doc-card"><h3 id="events" tabindex="-1">Events</h3>\n<table>\n<thead>\n<tr>\n<th>\u4E8B\u4EF6\u540D</th>\n<th>\u8BF4\u660E</th>\n<th>\u56DE\u8C03\u53C2\u6570</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>click</td>\n<td>\u70B9\u51FB\u7EC4\u4EF6\u65F6\u89E6\u53D1</td>\n<td><em>MouseEvent</em></td>\n</tr>\n<tr>\n<td>offset-change</td>\n<td>\u7531\u7528\u6237\u62D6\u62FD\u5BFC\u81F4\u4F4D\u7F6E\u6539\u53D8\u540E\u89E6\u53D1</td>\n<td><em>{x: string, y: string}</em></td>\n</tr>\n</tbody>\n</table>\n</div><div class="van-doc-card"><h3 id="slots" tabindex="-1">Slots</h3>\n<table>\n<thead>\n<tr>\n<th>\u540D\u79F0</th>\n<th>\u8BF4\u660E</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>default</td>\n<td>\u81EA\u5B9A\u4E49\u6C14\u6CE1\u663E\u793A\u5185\u5BB9</td>\n</tr>\n</tbody>\n</table>\n</div><div class="van-doc-card"><h3 id="lei-xing-ding-yi" tabindex="-1">\u7C7B\u578B\u5B9A\u4E49</h3>\n<p>\u7EC4\u4EF6\u5BFC\u51FA\u4EE5\u4E0B\u7C7B\u578B\u5B9A\u4E49\uFF1A</p>\n<pre><code class="language-ts"><span class="hljs-keyword">export</span> <span class="hljs-keyword">type</span> {\n <span class="hljs-title class_">FloatingBubbleProps</span>,\n <span class="hljs-title class_">FloatingBubbleAxis</span>,\n <span class="hljs-title class_">FloatingBubbleMagnetic</span>,\n <span class="hljs-title class_">FloatingBubbleOffset</span>,\n} <span class="hljs-keyword">from</span> <span class="hljs-string">'vant'</span>;\n</code></pre>\n</div><h2 id="zhu-ti-ding-zhi" tabindex="-1">\u4E3B\u9898\u5B9A\u5236</h2>\n<div class="van-doc-card"><h3 id="yang-shi-bian-liang" tabindex="-1">\u6837\u5F0F\u53D8\u91CF</h3>\n<p>\u7EC4\u4EF6\u63D0\u4F9B\u4E86\u4E0B\u5217 CSS \u53D8\u91CF\uFF0C\u53EF\u7528\u4E8E\u81EA\u5B9A\u4E49\u6837\u5F0F\uFF0C\u4F7F\u7528\u65B9\u6CD5\u8BF7\u53C2\u8003 <a href="#/zh-CN/config-provider" target="_blank">ConfigProvider \u7EC4\u4EF6</a>\u3002</p>\n<table>\n<thead>\n<tr>\n<th>\u540D\u79F0</th>\n<th>\u9ED8\u8BA4\u503C</th>\n<th>\u63CF\u8FF0</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>--van-floating-bubble-size</td>\n<td><em>48px</em></td>\n<td>-</td>\n</tr>\n<tr>\n<td>--van-floating-bubble-initial-gap</td>\n<td><em>24px</em></td>\n<td>-</td>\n</tr>\n<tr>\n<td>--van-floating-bubble-icon-size</td>\n<td><em>28px</em></td>\n<td>-</td>\n</tr>\n<tr>\n<td>--van-floating-bubble-background</td>\n<td><em>var(--van-primary-color)</em></td>\n<td>-</td>\n</tr>\n<tr>\n<td>--van-floating-bubble-color</td>\n<td><em>var(--van-background-2)</em></td>\n<td>-</td>\n</tr>\n<tr>\n<td>--van-floating-bubble-z-index</td>\n<td><em>999</em></td>\n<td>-</td>\n</tr>\n<tr>\n<td>--van-floating-bubble-border-radius</td>\n<td><em>--van-floating-bubble-border-radius</em></td>\n<td>-</td>\n</tr>\n</tbody>\n</table>\n</div>'},null,8,l))}}}]); |