<article data-v-608e4900="">
    <section class="markdown">
        <h1>AutoComplete <span class="subtitle">自动完成</span></h1>
        <section class="markdown">
            <p>输入框自动完成功能。</p>
            <h2 id="何时使用">何时使用</h2>
            <ul>
                <li>需要一个输入框而不是选择器。</li>
                <li>需要输入建议/辅助提示。</li>
            </ul>
            <p>和 Select 的区别是：</p>
            <ul>
                <li>AutoComplete 是一个带提示的文本输入框，用户可以自由输入，关键词是辅助<strong>输入</strong>。</li>
                <li>Select 是在限定的可选项中进行选择，关键词是<strong>选择</strong>。</li>
            </ul>
        </section>
    </section>
    <section class="markdown">
        <h2>代码演示</h2>
    </section>
    <div class="ant-row" data-v-608e4900="" style="margin-left: -8px; margin-right: -8px; row-gap: 0px;">
        <div class="ant-col ant-col-12 code-boxes-col-2-1" style="padding-left: 8px; padding-right: 8px;">
            <section class="code-box" id="components-auto-complete-demo-basic">
                <section class="code-box-demo">
                    <div class="ant-select ant-select-show-search ant-select-auto-complete ant-select-single ant-select-customize-input ant-select-show-search" style="width: 200px;">
                        <!---->
                        <!---->
                        <div class="ant-select-selector"><span class="ant-select-selection-search"><input type="search" id="rc_select_5" autocomplete="off" class="ant-input ant-select-selection-search-input" role="combobox" aria-haspopup="listbox" aria-owns="rc_select_5_list" aria-autocomplete="list" aria-controls="rc_select_5_list" aria-activedescendant="rc_select_5_list_0"></span>
                            <!----><span class="ant-select-selection-placeholder">input here</span></div>
                        <!---->
                        <!---->
                    </div>
                </section>
                <section class="code-box-meta markdown">
                    <div class="code-box-title"><a href="#components-auto-complete-demo-basic">基本使用</a></div>
                    <div class="code-box-description">
                        <p>基本使用。通过 options 设置自动完成的数据源。</p>
                    </div>
                </section>
                <section class="highlight-wrapper">
                    <div class="highlight">
                        <pre class="language-vue"><code><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>template</span><span class="token punctuation">&gt;</span></span>
  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>a-auto-complete</span>
    <span class="token attr-name"><span class="token namespace">v-model:</span>value</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>value<span class="token punctuation">"</span></span>
    <span class="token attr-name">:options</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>options<span class="token punctuation">"</span></span>
    <span class="token special-attr"><span class="token attr-name">style</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span><span class="token value css language-css"><span class="token property">width</span><span class="token punctuation">:</span> 200px</span><span class="token punctuation">"</span></span></span>
    <span class="token attr-name">placeholder</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>input here<span class="token punctuation">"</span></span>
    <span class="token attr-name">@select</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>onSelect<span class="token punctuation">"</span></span>
    <span class="token attr-name">@search</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>onSearch<span class="token punctuation">"</span></span>
  <span class="token punctuation">/&gt;</span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>template</span><span class="token punctuation">&gt;</span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>script</span> <span class="token attr-name">lang</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>ts<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span><span class="token script"><span class="token language-javascript">
<span class="token keyword">import</span> <span class="token punctuation">{</span> defineComponent<span class="token punctuation">,</span> ref<span class="token punctuation">,</span> watch <span class="token punctuation">}</span> <span class="token keyword">from</span> <span class="token string">'vue'</span><span class="token punctuation">;</span> 
 <span class="token keyword">interface</span> <span class="token class-name">MockVal</span> <span class="token punctuation">{</span>
  value<span class="token operator">:</span> string<span class="token punctuation">;</span>
<span class="token punctuation">}</span>
<span class="token keyword">const</span> mockVal <span class="token operator">=</span> <span class="token punctuation">(</span>str<span class="token operator">:</span> string<span class="token punctuation">,</span> repeat <span class="token operator">=</span> <span class="token number">1</span><span class="token punctuation">)</span><span class="token operator">:</span> <span class="token parameter">MockVal</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
  <span class="token keyword">return</span> <span class="token punctuation">{</span>
    value<span class="token operator">:</span> str<span class="token punctuation">.</span><span class="token function">repeat</span><span class="token punctuation">(</span>repeat<span class="token punctuation">)</span><span class="token punctuation">,</span>
  <span class="token punctuation">}</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span><span class="token punctuation">;</span>
<span class="token keyword">export</span> <span class="token keyword">default</span> <span class="token function">defineComponent</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
  <span class="token function">setup</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
    <span class="token keyword">const</span> value <span class="token operator">=</span> <span class="token function">ref</span><span class="token punctuation">(</span><span class="token string">''</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token keyword">const</span> options <span class="token operator">=</span> ref<span class="token operator">&lt;</span>MockVal<span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token operator">&gt;</span><span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token keyword">const</span> <span class="token function-variable function">onSearch</span> <span class="token operator">=</span> <span class="token punctuation">(</span><span class="token parameter">searchText<span class="token operator">:</span> string</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
      console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">'searchText'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
      options<span class="token punctuation">.</span>value <span class="token operator">=</span> <span class="token operator">!</span>searchText
        <span class="token operator">?</span> <span class="token punctuation">[</span><span class="token punctuation">]</span>
        <span class="token operator">:</span> <span class="token punctuation">[</span><span class="token function">mockVal</span><span class="token punctuation">(</span>searchText<span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">mockVal</span><span class="token punctuation">(</span>searchText<span class="token punctuation">,</span> <span class="token number">2</span><span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">mockVal</span><span class="token punctuation">(</span>searchText<span class="token punctuation">,</span> <span class="token number">3</span><span class="token punctuation">)</span><span class="token punctuation">]</span><span class="token punctuation">;</span>
    <span class="token punctuation">}</span><span class="token punctuation">;</span>
    <span class="token keyword">const</span> <span class="token function-variable function">onSelect</span> <span class="token operator">=</span> <span class="token punctuation">(</span><span class="token parameter">value<span class="token operator">:</span> string</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
      console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">'onSelect'</span><span class="token punctuation">,</span> value<span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token punctuation">}</span><span class="token punctuation">;</span>
    <span class="token function">watch</span><span class="token punctuation">(</span>value<span class="token punctuation">,</span> <span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
      console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">'value'</span><span class="token punctuation">,</span> value<span class="token punctuation">.</span>value<span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token keyword">return</span> <span class="token punctuation">{</span>
      value<span class="token punctuation">,</span>
      options<span class="token punctuation">,</span>
      onSearch<span class="token punctuation">,</span>
      onSelect<span class="token punctuation">,</span>
    <span class="token punctuation">}</span><span class="token punctuation">;</span>
  <span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</span></span><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>script</span><span class="token punctuation">&gt;</span></span>
</code></pre>
                    </div>
                </section>
            </section>
            <section class="code-box" id="components-auto-complete-demo-custom">
                <section class="code-box-demo">
                    <div class="ant-select ant-select-show-search ant-select-auto-complete ant-select-single ant-select-customize-input ant-select-show-search" style="width: 200px;">
                        <!---->
                        <!---->
                        <div class="ant-select-selector"><span class="ant-select-selection-search"><textarea placeholder="input here" class="ant-input ant-select-selection-search-input" id="rc_select_6" autocomplete="off" role="combobox" aria-haspopup="listbox" aria-owns="rc_select_6_list" aria-autocomplete="list" aria-controls="rc_select_6_list" aria-activedescendant="rc_select_6_list_0" style="height: 50px;"></textarea></span>
                            <!----><span class="ant-select-selection-placeholder"><!----></span></div>
                        <!---->
                        <!---->
                    </div>
                </section>
                <section class="code-box-meta markdown">
                    <div class="code-box-title"><a href="#components-auto-complete-demo-custom">自定义输入组件</a></div>
                    <div class="code-box-description">
                        <p>自定义输入组件。</p>
                    </div>
                </section>
                <section class="highlight-wrapper">
                    <div class="highlight">
                        <pre class="language-vue"><code><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>template</span><span class="token punctuation">&gt;</span></span>
  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>a-auto-complete</span>
    <span class="token attr-name"><span class="token namespace">v-model:</span>value</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>value<span class="token punctuation">"</span></span>
    <span class="token attr-name">:options</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>options<span class="token punctuation">"</span></span>
    <span class="token special-attr"><span class="token attr-name">style</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span><span class="token value css language-css"><span class="token property">width</span><span class="token punctuation">:</span> 200px</span><span class="token punctuation">"</span></span></span>
    <span class="token attr-name">@search</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>handleSearch<span class="token punctuation">"</span></span>
    <span class="token attr-name">@select</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>onSelect<span class="token punctuation">"</span></span>
  <span class="token punctuation">&gt;</span></span>
    <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>a-textarea</span>
      <span class="token attr-name">placeholder</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>input here<span class="token punctuation">"</span></span>
      <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>custom<span class="token punctuation">"</span></span>
      <span class="token special-attr"><span class="token attr-name">style</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span><span class="token value css language-css"><span class="token property">height</span><span class="token punctuation">:</span> 50px</span><span class="token punctuation">"</span></span></span>
      <span class="token attr-name">@keypress</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>handleKeyPress<span class="token punctuation">"</span></span>
    <span class="token punctuation">/&gt;</span></span>
  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>a-auto-complete</span><span class="token punctuation">&gt;</span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>template</span><span class="token punctuation">&gt;</span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>script</span> <span class="token attr-name">lang</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>ts<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span><span class="token script"><span class="token language-javascript">
<span class="token keyword">import</span> <span class="token punctuation">{</span> defineComponent<span class="token punctuation">,</span> ref <span class="token punctuation">}</span> <span class="token keyword">from</span> <span class="token string">'vue'</span><span class="token punctuation">;</span>
<span class="token keyword">export</span> <span class="token keyword">default</span> <span class="token function">defineComponent</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
  <span class="token function">setup</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
    <span class="token keyword">const</span> value <span class="token operator">=</span> <span class="token function">ref</span><span class="token punctuation">(</span><span class="token string">''</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token keyword">const</span> options <span class="token operator">=</span> ref<span class="token operator">&lt;</span><span class="token punctuation">{</span> value<span class="token operator">:</span> string <span class="token punctuation">}</span><span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token operator">&gt;</span><span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token keyword">const</span> <span class="token function-variable function">onSelect</span> <span class="token operator">=</span> <span class="token punctuation">(</span><span class="token parameter">value<span class="token operator">:</span> string</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
      console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">'onSelect'</span><span class="token punctuation">,</span> value<span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token punctuation">}</span><span class="token punctuation">;</span>
    <span class="token keyword">const</span> <span class="token function-variable function">handleSearch</span> <span class="token operator">=</span> <span class="token punctuation">(</span><span class="token parameter">value<span class="token operator">:</span> string</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
      options<span class="token punctuation">.</span>value <span class="token operator">=</span> <span class="token operator">!</span>value
        <span class="token operator">?</span> <span class="token punctuation">[</span><span class="token punctuation">]</span>
        <span class="token operator">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span> value <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token punctuation">{</span> value<span class="token operator">:</span> value <span class="token operator">+</span> value <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token punctuation">{</span> value<span class="token operator">:</span> value <span class="token operator">+</span> value <span class="token operator">+</span> value <span class="token punctuation">}</span><span class="token punctuation">]</span><span class="token punctuation">;</span>
    <span class="token punctuation">}</span><span class="token punctuation">;</span>
    <span class="token keyword">const</span> <span class="token function-variable function">handleKeyPress</span> <span class="token operator">=</span> <span class="token punctuation">(</span><span class="token parameter">ev<span class="token operator">:</span> KeyboardEvent</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
      console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">'handleKeyPress'</span><span class="token punctuation">,</span> ev<span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token punctuation">}</span><span class="token punctuation">;</span>
    <span class="token keyword">return</span> <span class="token punctuation">{</span>
      value<span class="token punctuation">,</span>
      options<span class="token punctuation">,</span>
      onSelect<span class="token punctuation">,</span>
      handleSearch<span class="token punctuation">,</span>
      handleKeyPress<span class="token punctuation">,</span>
    <span class="token punctuation">}</span><span class="token punctuation">;</span>
  <span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</span></span><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>script</span><span class="token punctuation">&gt;</span></span>
</code></pre>
                    </div>
                </section>
            </section>
            <section class="code-box" id="components-auto-complete-demo-certain-category" data-v-2375c6e8="">
                <section class="code-box-demo">
                    <div class="certain-category-search-wrapper" data-v-2375c6e8="" style="width: 250px;">
                        <div class="ant-select ant-select-lg certain-category-search ant-select-lg ant-select-show-search ant-select-auto-complete ant-select-single ant-select-customize-input ant-select-show-search" data-v-2375c6e8="" style="width: 100%;">
                            <!---->
                            <!---->
                            <div class="ant-select-selector"><span class="ant-select-selection-search"><span class="ant-select-selection-search-input ant-input-affix-wrapper" data-v-2375c6e8=""><!----><input placeholder="input here" type="search" id="rc_select_7" autocomplete="off" class="ant-input" role="combobox" aria-haspopup="listbox" aria-owns="rc_select_7_list" aria-autocomplete="list" aria-controls="rc_select_7_list" aria-activedescendant="rc_select_7_list_0"><span class="ant-input-suffix"><!----><span role="img" aria-label="search" class="anticon anticon-search certain-category-icon" data-v-2375c6e8=""><svg focusable="false" class="" data-icon="search" width="1em" height="1em" fill="currentColor" aria-hidden="true" viewBox="64 64 896 896"><path d="M909.6 854.5L649.9 594.8C690.2 542.7 712 479 712 412c0-80.2-31.3-155.4-87.9-212.1-56.6-56.7-132-87.9-212.1-87.9s-155.5 31.3-212.1 87.9C143.2 256.5 112 331.8 112 412c0 80.1 31.3 155.5 87.9 212.1C256.5 680.8 331.8 712 412 712c67 0 130.6-21.8 182.7-62l259.7 259.6a8.2 8.2 0 0011.6 0l43.6-43.5a8.2 8.2 0 000-11.6zM570.4 570.4C528 612.7 471.8 636 412 636s-116-23.3-158.4-65.6C211.3 528 188 471.8 188 412s23.3-116.1 65.6-158.4C296 211.3 352.2 188 412 188s116.1 23.2 158.4 65.6S636 352.2 636 412s-23.3 116.1-65.6 158.4z"></path></svg></span></span>
                                </span>
                                </span>
                                <!----><span class="ant-select-selection-placeholder"><!----></span></div>
                            <!---->
                            <!---->
                        </div>
                    </div>
                </section>
                <section class="code-box-meta markdown">
                    <div class="code-box-title"><a href="#components-auto-complete-demo-certain-category">查询模式 - 确定类目</a></div>
                    <div class="code-box-description">
                        <p>查询模式 - 确定类目。</p>
                    </div>
                </section>
                <section class="highlight-wrapper">
                    <div class="highlight">
                        <pre class="language-vue" data-v-2375c6e8=""><code data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;</span>template</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
  <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;</span>div</span> <span class="token attr-name" data-v-2375c6e8="">class</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>certain-category-search-wrapper<span class="token punctuation" data-v-2375c6e8="">"</span></span> <span class="token special-attr" data-v-2375c6e8=""><span class="token attr-name" data-v-2375c6e8="">style</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span><span class="token value css language-css" data-v-2375c6e8=""><span class="token property" data-v-2375c6e8="">width</span><span class="token punctuation" data-v-2375c6e8="">:</span> 250px</span><span class="token punctuation" data-v-2375c6e8="">"</span></span></span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
    <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;</span>a-auto-complete</span>
      <span class="token attr-name" data-v-2375c6e8=""><span class="token namespace" data-v-2375c6e8="">v-model:</span>value</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>value<span class="token punctuation" data-v-2375c6e8="">"</span></span>
      <span class="token attr-name" data-v-2375c6e8="">class</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>certain-category-search<span class="token punctuation" data-v-2375c6e8="">"</span></span>
      <span class="token attr-name" data-v-2375c6e8="">dropdown-class-name</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>certain-category-search-dropdown<span class="token punctuation" data-v-2375c6e8="">"</span></span>
      <span class="token attr-name" data-v-2375c6e8="">:dropdown-match-select-width</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>false<span class="token punctuation" data-v-2375c6e8="">"</span></span>
      <span class="token attr-name" data-v-2375c6e8="">:dropdown-style</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>{ width: <span class="token punctuation" data-v-2375c6e8="">'</span>300px<span class="token punctuation" data-v-2375c6e8="">'</span> }<span class="token punctuation" data-v-2375c6e8="">"</span></span>
      <span class="token attr-name" data-v-2375c6e8="">size</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>large<span class="token punctuation" data-v-2375c6e8="">"</span></span>
      <span class="token special-attr" data-v-2375c6e8=""><span class="token attr-name" data-v-2375c6e8="">style</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span><span class="token value css language-css" data-v-2375c6e8=""><span class="token property" data-v-2375c6e8="">width</span><span class="token punctuation" data-v-2375c6e8="">:</span> 100%</span><span class="token punctuation" data-v-2375c6e8="">"</span></span></span>
      <span class="token attr-name" data-v-2375c6e8="">option-label-prop</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>value<span class="token punctuation" data-v-2375c6e8="">"</span></span>
    <span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
      <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;</span>template</span> <span class="token attr-name" data-v-2375c6e8="">#dataSource</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
        <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;</span>a-select-opt-group</span> <span class="token attr-name" data-v-2375c6e8="">v-for</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>group in dataSource<span class="token punctuation" data-v-2375c6e8="">"</span></span> <span class="token attr-name" data-v-2375c6e8="">:key</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>group.title<span class="token punctuation" data-v-2375c6e8="">"</span></span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
          <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;</span>template</span> <span class="token attr-name" data-v-2375c6e8="">#label</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
            <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;</span>span</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
              {{ group.title }}
              <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;</span>a</span>
                <span class="token special-attr" data-v-2375c6e8=""><span class="token attr-name" data-v-2375c6e8="">style</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span><span class="token value css language-css" data-v-2375c6e8=""><span class="token property" data-v-2375c6e8="">float</span><span class="token punctuation" data-v-2375c6e8="">:</span> right</span><span class="token punctuation" data-v-2375c6e8="">"</span></span></span>
                <span class="token attr-name" data-v-2375c6e8="">href</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>https://www.google.com/search?q=antd<span class="token punctuation" data-v-2375c6e8="">"</span></span>
                <span class="token attr-name" data-v-2375c6e8="">target</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>_blank<span class="token punctuation" data-v-2375c6e8="">"</span></span>
                <span class="token attr-name" data-v-2375c6e8="">rel</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>noopener noreferrer<span class="token punctuation" data-v-2375c6e8="">"</span></span>
              <span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
                more
              <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;/</span>a</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
            <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;/</span>span</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
          <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;/</span>template</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
          <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;</span>a-select-option</span> <span class="token attr-name" data-v-2375c6e8="">v-for</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>opt in group.children<span class="token punctuation" data-v-2375c6e8="">"</span></span> <span class="token attr-name" data-v-2375c6e8="">:key</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>opt.title<span class="token punctuation" data-v-2375c6e8="">"</span></span> <span class="token attr-name" data-v-2375c6e8="">:value</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>opt.title<span class="token punctuation" data-v-2375c6e8="">"</span></span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
            {{ opt.title }}
            <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;</span>span</span> <span class="token attr-name" data-v-2375c6e8="">class</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>certain-search-item-count<span class="token punctuation" data-v-2375c6e8="">"</span></span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>{{ opt.count }} people<span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;/</span>span</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
          <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;/</span>a-select-option</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
        <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;/</span>a-select-opt-group</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
        <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;</span>a-select-option</span> <span class="token attr-name" data-v-2375c6e8="">key</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>all<span class="token punctuation" data-v-2375c6e8="">"</span></span> <span class="token attr-name" data-v-2375c6e8="">disabled</span> <span class="token attr-name" data-v-2375c6e8="">class</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>show-all<span class="token punctuation" data-v-2375c6e8="">"</span></span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
          <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;</span>a</span>
            <span class="token attr-name" data-v-2375c6e8="">href</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>https://www.google.com/search?q=ant-design-vue<span class="token punctuation" data-v-2375c6e8="">"</span></span>
            <span class="token attr-name" data-v-2375c6e8="">target</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>_blank<span class="token punctuation" data-v-2375c6e8="">"</span></span>
            <span class="token attr-name" data-v-2375c6e8="">rel</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>noopener noreferrer<span class="token punctuation" data-v-2375c6e8="">"</span></span>
          <span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
            View all results
          <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;/</span>a</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
        <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;/</span>a-select-option</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
      <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;/</span>template</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
      <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;</span>a-input</span> <span class="token attr-name" data-v-2375c6e8="">placeholder</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>input here<span class="token punctuation" data-v-2375c6e8="">"</span></span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
        <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;</span>template</span> <span class="token attr-name" data-v-2375c6e8="">#suffix</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span><span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;</span>search-outlined</span> <span class="token attr-name" data-v-2375c6e8="">class</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>certain-category-icon<span class="token punctuation" data-v-2375c6e8="">"</span></span> <span class="token punctuation" data-v-2375c6e8="">/&gt;</span></span><span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;/</span>template</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
      <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;/</span>a-input</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
    <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;/</span>a-auto-complete</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
  <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;/</span>div</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
<span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;/</span>template</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
<span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;</span>script</span> <span class="token attr-name" data-v-2375c6e8="">lang</span><span class="token attr-value" data-v-2375c6e8=""><span class="token punctuation attr-equals" data-v-2375c6e8="">=</span><span class="token punctuation" data-v-2375c6e8="">"</span>ts<span class="token punctuation" data-v-2375c6e8="">"</span></span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span><span class="token script" data-v-2375c6e8=""><span class="token language-javascript" data-v-2375c6e8="">
<span class="token keyword" data-v-2375c6e8="">import</span> <span class="token punctuation" data-v-2375c6e8="">{</span> SearchOutlined <span class="token punctuation" data-v-2375c6e8="">}</span> <span class="token keyword" data-v-2375c6e8="">from</span> <span class="token string" data-v-2375c6e8="">'@ant-design/icons-vue'</span><span class="token punctuation" data-v-2375c6e8="">;</span>
<span class="token keyword" data-v-2375c6e8="">import</span> <span class="token punctuation" data-v-2375c6e8="">{</span> defineComponent<span class="token punctuation" data-v-2375c6e8="">,</span> ref <span class="token punctuation" data-v-2375c6e8="">}</span> <span class="token keyword" data-v-2375c6e8="">from</span> <span class="token string" data-v-2375c6e8="">'vue'</span><span class="token punctuation" data-v-2375c6e8="">;</span>
<span class="token keyword" data-v-2375c6e8="">const</span> dataSource <span class="token operator" data-v-2375c6e8="">=</span> <span class="token punctuation" data-v-2375c6e8="">[</span>
  <span class="token punctuation" data-v-2375c6e8="">{</span>
    title<span class="token operator" data-v-2375c6e8="">:</span> <span class="token string" data-v-2375c6e8="">'Libraries'</span><span class="token punctuation" data-v-2375c6e8="">,</span>
    children<span class="token operator" data-v-2375c6e8="">:</span> <span class="token punctuation" data-v-2375c6e8="">[</span>
      <span class="token punctuation" data-v-2375c6e8="">{</span>
        title<span class="token operator" data-v-2375c6e8="">:</span> <span class="token string" data-v-2375c6e8="">'AntDesign'</span><span class="token punctuation" data-v-2375c6e8="">,</span>
        count<span class="token operator" data-v-2375c6e8="">:</span> <span class="token number" data-v-2375c6e8="">10000</span><span class="token punctuation" data-v-2375c6e8="">,</span>
      <span class="token punctuation" data-v-2375c6e8="">}</span><span class="token punctuation" data-v-2375c6e8="">,</span>
      <span class="token punctuation" data-v-2375c6e8="">{</span>
        title<span class="token operator" data-v-2375c6e8="">:</span> <span class="token string" data-v-2375c6e8="">'AntDesign UI'</span><span class="token punctuation" data-v-2375c6e8="">,</span>
        count<span class="token operator" data-v-2375c6e8="">:</span> <span class="token number" data-v-2375c6e8="">10600</span><span class="token punctuation" data-v-2375c6e8="">,</span>
      <span class="token punctuation" data-v-2375c6e8="">}</span><span class="token punctuation" data-v-2375c6e8="">,</span>
    <span class="token punctuation" data-v-2375c6e8="">]</span><span class="token punctuation" data-v-2375c6e8="">,</span>
  <span class="token punctuation" data-v-2375c6e8="">}</span><span class="token punctuation" data-v-2375c6e8="">,</span>
  <span class="token punctuation" data-v-2375c6e8="">{</span>
    title<span class="token operator" data-v-2375c6e8="">:</span> <span class="token string" data-v-2375c6e8="">'Solutions'</span><span class="token punctuation" data-v-2375c6e8="">,</span>
    children<span class="token operator" data-v-2375c6e8="">:</span> <span class="token punctuation" data-v-2375c6e8="">[</span>
      <span class="token punctuation" data-v-2375c6e8="">{</span>
        title<span class="token operator" data-v-2375c6e8="">:</span> <span class="token string" data-v-2375c6e8="">'AntDesign UI FAQ'</span><span class="token punctuation" data-v-2375c6e8="">,</span>
        count<span class="token operator" data-v-2375c6e8="">:</span> <span class="token number" data-v-2375c6e8="">60100</span><span class="token punctuation" data-v-2375c6e8="">,</span>
      <span class="token punctuation" data-v-2375c6e8="">}</span><span class="token punctuation" data-v-2375c6e8="">,</span>
      <span class="token punctuation" data-v-2375c6e8="">{</span>
        title<span class="token operator" data-v-2375c6e8="">:</span> <span class="token string" data-v-2375c6e8="">'AntDesign FAQ'</span><span class="token punctuation" data-v-2375c6e8="">,</span>
        count<span class="token operator" data-v-2375c6e8="">:</span> <span class="token number" data-v-2375c6e8="">30010</span><span class="token punctuation" data-v-2375c6e8="">,</span>
      <span class="token punctuation" data-v-2375c6e8="">}</span><span class="token punctuation" data-v-2375c6e8="">,</span>
    <span class="token punctuation" data-v-2375c6e8="">]</span><span class="token punctuation" data-v-2375c6e8="">,</span>
  <span class="token punctuation" data-v-2375c6e8="">}</span><span class="token punctuation" data-v-2375c6e8="">,</span>
  <span class="token punctuation" data-v-2375c6e8="">{</span>
    title<span class="token operator" data-v-2375c6e8="">:</span> <span class="token string" data-v-2375c6e8="">'Articles'</span><span class="token punctuation" data-v-2375c6e8="">,</span>
    children<span class="token operator" data-v-2375c6e8="">:</span> <span class="token punctuation" data-v-2375c6e8="">[</span>
      <span class="token punctuation" data-v-2375c6e8="">{</span>
        title<span class="token operator" data-v-2375c6e8="">:</span> <span class="token string" data-v-2375c6e8="">'AntDesign design language'</span><span class="token punctuation" data-v-2375c6e8="">,</span>
        count<span class="token operator" data-v-2375c6e8="">:</span> <span class="token number" data-v-2375c6e8="">100000</span><span class="token punctuation" data-v-2375c6e8="">,</span>
      <span class="token punctuation" data-v-2375c6e8="">}</span><span class="token punctuation" data-v-2375c6e8="">,</span>
    <span class="token punctuation" data-v-2375c6e8="">]</span><span class="token punctuation" data-v-2375c6e8="">,</span>
  <span class="token punctuation" data-v-2375c6e8="">}</span><span class="token punctuation" data-v-2375c6e8="">,</span>
<span class="token punctuation" data-v-2375c6e8="">]</span><span class="token punctuation" data-v-2375c6e8="">;</span>
<span class="token keyword" data-v-2375c6e8="">export</span> <span class="token keyword" data-v-2375c6e8="">default</span> <span class="token function" data-v-2375c6e8="">defineComponent</span><span class="token punctuation" data-v-2375c6e8="">(</span><span class="token punctuation" data-v-2375c6e8="">{</span>
  <span class="token function" data-v-2375c6e8="">setup</span><span class="token punctuation" data-v-2375c6e8="">(</span><span class="token punctuation" data-v-2375c6e8="">)</span> <span class="token punctuation" data-v-2375c6e8="">{</span>
    <span class="token keyword" data-v-2375c6e8="">return</span> <span class="token punctuation" data-v-2375c6e8="">{</span>
      value<span class="token operator" data-v-2375c6e8="">:</span> <span class="token function" data-v-2375c6e8="">ref</span><span class="token punctuation" data-v-2375c6e8="">(</span><span class="token string" data-v-2375c6e8="">''</span><span class="token punctuation" data-v-2375c6e8="">)</span><span class="token punctuation" data-v-2375c6e8="">,</span>
      dataSource<span class="token punctuation" data-v-2375c6e8="">,</span>
    <span class="token punctuation" data-v-2375c6e8="">}</span><span class="token punctuation" data-v-2375c6e8="">;</span>
  <span class="token punctuation" data-v-2375c6e8="">}</span><span class="token punctuation" data-v-2375c6e8="">,</span>
  components<span class="token operator" data-v-2375c6e8="">:</span> <span class="token punctuation" data-v-2375c6e8="">{</span>
    SearchOutlined<span class="token punctuation" data-v-2375c6e8="">,</span>
  <span class="token punctuation" data-v-2375c6e8="">}</span><span class="token punctuation" data-v-2375c6e8="">,</span>
<span class="token punctuation" data-v-2375c6e8="">}</span><span class="token punctuation" data-v-2375c6e8="">)</span><span class="token punctuation" data-v-2375c6e8="">;</span>
</span></span><span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;/</span>script</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
<span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;</span>style</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span><span class="token style" data-v-2375c6e8=""><span class="token language-css" data-v-2375c6e8="">
<span class="token selector" data-v-2375c6e8="">.certain-category-search-dropdown .ant-select-dropdown-menu-item-group-title</span> <span class="token punctuation" data-v-2375c6e8="">{</span>
  <span class="token property" data-v-2375c6e8="">color</span><span class="token punctuation" data-v-2375c6e8="">:</span> #666<span class="token punctuation" data-v-2375c6e8="">;</span>
  <span class="token property" data-v-2375c6e8="">font-weight</span><span class="token punctuation" data-v-2375c6e8="">:</span> bold<span class="token punctuation" data-v-2375c6e8="">;</span>
<span class="token punctuation" data-v-2375c6e8="">}</span> 
 <span class="token selector" data-v-2375c6e8="">.certain-category-search-dropdown .ant-select-dropdown-menu-item-group</span> <span class="token punctuation" data-v-2375c6e8="">{</span>
  <span class="token property" data-v-2375c6e8="">border-bottom</span><span class="token punctuation" data-v-2375c6e8="">:</span> 1px solid #f6f6f6<span class="token punctuation" data-v-2375c6e8="">;</span>
<span class="token punctuation" data-v-2375c6e8="">}</span> 
 <span class="token selector" data-v-2375c6e8="">.certain-category-search-dropdown .ant-select-dropdown-menu-item</span> <span class="token punctuation" data-v-2375c6e8="">{</span>
  <span class="token property" data-v-2375c6e8="">padding-left</span><span class="token punctuation" data-v-2375c6e8="">:</span> 16px<span class="token punctuation" data-v-2375c6e8="">;</span>
<span class="token punctuation" data-v-2375c6e8="">}</span> 
 <span class="token selector" data-v-2375c6e8="">.certain-category-search-dropdown .ant-select-dropdown-menu-item.show-all</span> <span class="token punctuation" data-v-2375c6e8="">{</span>
  <span class="token property" data-v-2375c6e8="">text-align</span><span class="token punctuation" data-v-2375c6e8="">:</span> center<span class="token punctuation" data-v-2375c6e8="">;</span>
  <span class="token property" data-v-2375c6e8="">cursor</span><span class="token punctuation" data-v-2375c6e8="">:</span> default<span class="token punctuation" data-v-2375c6e8="">;</span>
<span class="token punctuation" data-v-2375c6e8="">}</span> 
 <span class="token selector" data-v-2375c6e8="">.certain-category-search-dropdown .ant-select-dropdown-menu</span> <span class="token punctuation" data-v-2375c6e8="">{</span>
  <span class="token property" data-v-2375c6e8="">max-height</span><span class="token punctuation" data-v-2375c6e8="">:</span> 300px<span class="token punctuation" data-v-2375c6e8="">;</span>
<span class="token punctuation" data-v-2375c6e8="">}</span>
</span></span><span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;/</span>style</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span> 
 <span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;</span>style</span> <span class="token attr-name" data-v-2375c6e8="">scoped</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span><span class="token style" data-v-2375c6e8=""><span class="token language-css" data-v-2375c6e8="">
<span class="token selector" data-v-2375c6e8="">.certain-category-search-wrapper
  :deep(.certain-category-search.ant-select-auto-complete)
  .ant-input-affix-wrapper
  .ant-input-suffix</span> <span class="token punctuation" data-v-2375c6e8="">{</span>
  <span class="token property" data-v-2375c6e8="">right</span><span class="token punctuation" data-v-2375c6e8="">:</span> 12px<span class="token punctuation" data-v-2375c6e8="">;</span>
<span class="token punctuation" data-v-2375c6e8="">}</span>
<span class="token selector" data-v-2375c6e8="">.certain-category-search-wrapper :deep(.certain-search-item-count)</span> <span class="token punctuation" data-v-2375c6e8="">{</span>
  <span class="token property" data-v-2375c6e8="">position</span><span class="token punctuation" data-v-2375c6e8="">:</span> absolute<span class="token punctuation" data-v-2375c6e8="">;</span>
  <span class="token property" data-v-2375c6e8="">color</span><span class="token punctuation" data-v-2375c6e8="">:</span> #999<span class="token punctuation" data-v-2375c6e8="">;</span>
  <span class="token property" data-v-2375c6e8="">right</span><span class="token punctuation" data-v-2375c6e8="">:</span> 16px<span class="token punctuation" data-v-2375c6e8="">;</span>
<span class="token punctuation" data-v-2375c6e8="">}</span>
<span class="token selector" data-v-2375c6e8="">.certain-category-search-wrapper
  :deep(.certain-category-search.ant-select-focused)
  .certain-category-icon</span> <span class="token punctuation" data-v-2375c6e8="">{</span>
  <span class="token property" data-v-2375c6e8="">color</span><span class="token punctuation" data-v-2375c6e8="">:</span> #108ee9<span class="token punctuation" data-v-2375c6e8="">;</span>
<span class="token punctuation" data-v-2375c6e8="">}</span>
<span class="token selector" data-v-2375c6e8="">.certain-category-search-wrapper :deep(.certain-category-icon)</span> <span class="token punctuation" data-v-2375c6e8="">{</span>
  <span class="token property" data-v-2375c6e8="">color</span><span class="token punctuation" data-v-2375c6e8="">:</span> #6e6e6e<span class="token punctuation" data-v-2375c6e8="">;</span>
  <span class="token property" data-v-2375c6e8="">transition</span><span class="token punctuation" data-v-2375c6e8="">:</span> all 0.3s <span class="token function" data-v-2375c6e8="">cubic-bezier</span><span class="token punctuation" data-v-2375c6e8="">(</span>0.645<span class="token punctuation" data-v-2375c6e8="">,</span> 0.045<span class="token punctuation" data-v-2375c6e8="">,</span> 0.355<span class="token punctuation" data-v-2375c6e8="">,</span> 1<span class="token punctuation" data-v-2375c6e8="">)</span><span class="token punctuation" data-v-2375c6e8="">;</span>
  <span class="token property" data-v-2375c6e8="">font-size</span><span class="token punctuation" data-v-2375c6e8="">:</span> 16px<span class="token punctuation" data-v-2375c6e8="">;</span>
<span class="token punctuation" data-v-2375c6e8="">}</span>
</span></span><span class="token tag" data-v-2375c6e8=""><span class="token tag" data-v-2375c6e8=""><span class="token punctuation" data-v-2375c6e8="">&lt;/</span>style</span><span class="token punctuation" data-v-2375c6e8="">&gt;</span></span>
</code></pre>
                    </div>
                </section>
            </section>
        </div>
        <div class="ant-col ant-col-12 code-boxes-col-2-1" style="padding-left: 8px; padding-right: 8px;">
            <section class="code-box" id="components-auto-complete-demo-options">
                <section class="code-box-demo">
                    <div class="ant-select ant-select-show-search ant-select-auto-complete ant-select-single ant-select-customize-input ant-select-show-search" style="width: 200px;">
                        <!---->
                        <!---->
                        <div class="ant-select-selector"><span class="ant-select-selection-search"><input type="search" id="rc_select_8" autocomplete="off" class="ant-input ant-select-selection-search-input" role="combobox" aria-haspopup="listbox" aria-owns="rc_select_8_list" aria-autocomplete="list" aria-controls="rc_select_8_list" aria-activedescendant="rc_select_8_list_0"></span>
                            <!----><span class="ant-select-selection-placeholder">input here</span></div>
                        <!---->
                        <!---->
                    </div>
                </section>
                <section class="code-box-meta markdown">
                    <div class="code-box-title"><a href="#components-auto-complete-demo-options">自定义选项</a></div>
                    <div class="code-box-description">
                        <p>也可以直接传递 #dataSource 的Option。</p>
                    </div>
                </section>
                <section class="highlight-wrapper">
                    <div class="highlight">
                        <pre class="language-vue"><code><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>template</span><span class="token punctuation">&gt;</span></span>
  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>a-auto-complete</span>
    <span class="token attr-name"><span class="token namespace">v-model:</span>value</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>value<span class="token punctuation">"</span></span>
    <span class="token special-attr"><span class="token attr-name">style</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span><span class="token value css language-css"><span class="token property">width</span><span class="token punctuation">:</span> 200px</span><span class="token punctuation">"</span></span></span>
    <span class="token attr-name">placeholder</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>input here<span class="token punctuation">"</span></span>
    <span class="token attr-name">@search</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>handleSearch<span class="token punctuation">"</span></span>
  <span class="token punctuation">&gt;</span></span>
    <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>template</span> <span class="token attr-name">#dataSource</span><span class="token punctuation">&gt;</span></span>
      <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>a-select-option</span> <span class="token attr-name">v-for</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>email in result<span class="token punctuation">"</span></span> <span class="token attr-name">:key</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>email<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span>
        {{ email }}
      <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>a-select-option</span><span class="token punctuation">&gt;</span></span>
    <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>template</span><span class="token punctuation">&gt;</span></span>
  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>a-auto-complete</span><span class="token punctuation">&gt;</span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>template</span><span class="token punctuation">&gt;</span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>script</span> <span class="token attr-name">lang</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>ts<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span><span class="token script"><span class="token language-javascript">
<span class="token keyword">import</span> <span class="token punctuation">{</span> defineComponent<span class="token punctuation">,</span> ref <span class="token punctuation">}</span> <span class="token keyword">from</span> <span class="token string">'vue'</span><span class="token punctuation">;</span> 
 <span class="token keyword">export</span> <span class="token keyword">default</span> <span class="token function">defineComponent</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
  <span class="token function">setup</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
    <span class="token keyword">const</span> value <span class="token operator">=</span> <span class="token function">ref</span><span class="token punctuation">(</span><span class="token string">''</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token keyword">const</span> result <span class="token operator">=</span> ref<span class="token operator">&lt;</span>string<span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token operator">&gt;</span><span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token keyword">const</span> <span class="token function-variable function">handleSearch</span> <span class="token operator">=</span> <span class="token punctuation">(</span><span class="token parameter">val<span class="token operator">:</span> string</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
      <span class="token keyword">let</span> res<span class="token operator">:</span> string<span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token punctuation">;</span>
      <span class="token keyword">if</span> <span class="token punctuation">(</span><span class="token operator">!</span>val <span class="token operator">||</span> val<span class="token punctuation">.</span><span class="token function">indexOf</span><span class="token punctuation">(</span><span class="token string">'@'</span><span class="token punctuation">)</span> <span class="token operator">&gt;=</span> <span class="token number">0</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
        res <span class="token operator">=</span> <span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token punctuation">;</span>
      <span class="token punctuation">}</span> <span class="token keyword">else</span> <span class="token punctuation">{</span>
        res <span class="token operator">=</span> <span class="token punctuation">[</span><span class="token string">'gmail.com'</span><span class="token punctuation">,</span> <span class="token string">'163.com'</span><span class="token punctuation">,</span> <span class="token string">'qq.com'</span><span class="token punctuation">]</span><span class="token punctuation">.</span><span class="token function">map</span><span class="token punctuation">(</span><span class="token parameter">domain</span> <span class="token operator">=&gt;</span> <span class="token template-string"><span class="token template-punctuation string">`</span><span class="token interpolation"><span class="token interpolation-punctuation punctuation">${</span>val<span class="token interpolation-punctuation punctuation">}</span></span><span class="token string">@</span><span class="token interpolation"><span class="token interpolation-punctuation punctuation">${</span>domain<span class="token interpolation-punctuation punctuation">}</span></span><span class="token template-punctuation string">`</span></span><span class="token punctuation">)</span><span class="token punctuation">;</span>
      <span class="token punctuation">}</span>
      result<span class="token punctuation">.</span>value <span class="token operator">=</span> res<span class="token punctuation">;</span>
    <span class="token punctuation">}</span><span class="token punctuation">;</span> 
     <span class="token keyword">return</span> <span class="token punctuation">{</span>
      value<span class="token punctuation">,</span>
      result<span class="token punctuation">,</span>
      handleSearch<span class="token punctuation">,</span>
    <span class="token punctuation">}</span><span class="token punctuation">;</span>
  <span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</span></span><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>script</span><span class="token punctuation">&gt;</span></span>
</code></pre>
                    </div>
                </section>
            </section>
            <section class="code-box" id="components-auto-complete-demo-non-case-sensitive">
                <section class="code-box-demo">
                    <div class="ant-select ant-select-show-search ant-select-auto-complete ant-select-single ant-select-customize-input ant-select-show-search" style="width: 200px;">
                        <!---->
                        <!---->
                        <div class="ant-select-selector"><span class="ant-select-selection-search"><input type="search" id="rc_select_9" autocomplete="off" class="ant-input ant-select-selection-search-input" role="combobox" aria-haspopup="listbox" aria-owns="rc_select_9_list" aria-autocomplete="list" aria-controls="rc_select_9_list" aria-activedescendant="rc_select_9_list_0"></span>
                            <!----><span class="ant-select-selection-placeholder">input here</span></div>
                        <!---->
                        <!---->
                    </div>
                </section>
                <section class="code-box-meta markdown">
                    <div class="code-box-title"><a href="#components-auto-complete-demo-non-case-sensitive">不区分大小写</a></div>
                    <div class="code-box-description">
                        <p>不区分大小写的 AutoComplete。</p>
                    </div>
                </section>
                <section class="highlight-wrapper">
                    <div class="highlight">
                        <pre class="language-vue"><code><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>template</span><span class="token punctuation">&gt;</span></span>
  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>a-auto-complete</span>
    <span class="token attr-name"><span class="token namespace">v-model:</span>value</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>value<span class="token punctuation">"</span></span>
    <span class="token attr-name">:options</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>options<span class="token punctuation">"</span></span>
    <span class="token special-attr"><span class="token attr-name">style</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span><span class="token value css language-css"><span class="token property">width</span><span class="token punctuation">:</span> 200px</span><span class="token punctuation">"</span></span></span>
    <span class="token attr-name">placeholder</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>input here<span class="token punctuation">"</span></span>
    <span class="token attr-name">:filter-option</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>filterOption<span class="token punctuation">"</span></span>
  <span class="token punctuation">/&gt;</span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>template</span><span class="token punctuation">&gt;</span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>script</span> <span class="token attr-name">lang</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>ts<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span><span class="token script"><span class="token language-javascript">
<span class="token keyword">import</span> <span class="token punctuation">{</span> defineComponent<span class="token punctuation">,</span> ref <span class="token punctuation">}</span> <span class="token keyword">from</span> <span class="token string">'vue'</span><span class="token punctuation">;</span>
<span class="token keyword">interface</span> <span class="token class-name">Option</span> <span class="token punctuation">{</span>
  value<span class="token operator">:</span> string<span class="token punctuation">;</span>
<span class="token punctuation">}</span>
<span class="token keyword">export</span> <span class="token keyword">default</span> <span class="token function">defineComponent</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
  <span class="token function">setup</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
    <span class="token keyword">const</span> <span class="token function-variable function">filterOption</span> <span class="token operator">=</span> <span class="token punctuation">(</span><span class="token parameter">input<span class="token operator">:</span> string<span class="token punctuation">,</span> option<span class="token operator">:</span> Option</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
      <span class="token keyword">return</span> option<span class="token punctuation">.</span>value<span class="token punctuation">.</span><span class="token function">toUpperCase</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">.</span><span class="token function">indexOf</span><span class="token punctuation">(</span>input<span class="token punctuation">.</span><span class="token function">toUpperCase</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token operator">&gt;=</span> <span class="token number">0</span><span class="token punctuation">;</span>
    <span class="token punctuation">}</span><span class="token punctuation">;</span>
    <span class="token keyword">return</span> <span class="token punctuation">{</span>
      value<span class="token operator">:</span> <span class="token function">ref</span><span class="token punctuation">(</span><span class="token string">''</span><span class="token punctuation">)</span><span class="token punctuation">,</span>
      options<span class="token operator">:</span> ref<span class="token operator">&lt;</span>Option<span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token operator">&gt;</span><span class="token punctuation">(</span><span class="token punctuation">[</span>
        <span class="token punctuation">{</span> value<span class="token operator">:</span> <span class="token string">'Burns Bay Road'</span> <span class="token punctuation">}</span><span class="token punctuation">,</span>
        <span class="token punctuation">{</span> value<span class="token operator">:</span> <span class="token string">'Downing Street'</span> <span class="token punctuation">}</span><span class="token punctuation">,</span>
        <span class="token punctuation">{</span> value<span class="token operator">:</span> <span class="token string">'Wall Street'</span> <span class="token punctuation">}</span><span class="token punctuation">,</span>
      <span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">,</span>
      filterOption<span class="token punctuation">,</span>
    <span class="token punctuation">}</span><span class="token punctuation">;</span>
  <span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</span></span><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>script</span><span class="token punctuation">&gt;</span></span>
</code></pre>
                    </div>
                </section>
            </section>
            <section class="code-box" id="components-auto-complete-demo-uncertain-category">
                <section class="code-box-demo">
                    <div class="global-search-wrapper" style="width: 300px;">
                        <div class="ant-select ant-select-lg global-search ant-select-lg ant-select-show-search ant-select-auto-complete ant-select-single ant-select-customize-input ant-select-show-search" style="width: 100%;">
                            <!---->
                            <!---->
                            <div class="ant-select-selector"><span class="ant-select-selection-search"><span class="ant-input-search ant-select-selection-search-input ant-input-search-enter-button ant-input-search-large ant-input-group-wrapper ant-input-group-wrapper-lg"><span class="ant-input-wrapper ant-input-group"><!----><input placeholder="input here" type="search" id="rc_select_10" autocomplete="off" role="combobox" aria-haspopup="listbox" aria-owns="rc_select_10_list" aria-autocomplete="list" aria-controls="rc_select_10_list" aria-activedescendant="rc_select_10_list_0" class="ant-input ant-input-lg"><span class="ant-input-group-addon"><button class="ant-btn ant-btn-primary ant-btn-lg ant-input-search-button" type="button"><!----><span role="img" aria-label="search" class="anticon anticon-search"><svg focusable="false" class="" data-icon="search" width="1em" height="1em" fill="currentColor" aria-hidden="true" viewBox="64 64 896 896"><path d="M909.6 854.5L649.9 594.8C690.2 542.7 712 479 712 412c0-80.2-31.3-155.4-87.9-212.1-56.6-56.7-132-87.9-212.1-87.9s-155.5 31.3-212.1 87.9C143.2 256.5 112 331.8 112 412c0 80.1 31.3 155.5 87.9 212.1C256.5 680.8 331.8 712 412 712c67 0 130.6-21.8 182.7-62l259.7 259.6a8.2 8.2 0 0011.6 0l43.6-43.5a8.2 8.2 0 000-11.6zM570.4 570.4C528 612.7 471.8 636 412 636s-116-23.3-158.4-65.6C211.3 528 188 471.8 188 412s23.3-116.1 65.6-158.4C296 211.3 352.2 188 412 188s116.1 23.2 158.4 65.6S636 352.2 636 412s-23.3 116.1-65.6 158.4z"></path></svg></span></button>
                                </span>
                                </span>
                                </span>
                                </span>
                                <!----><span class="ant-select-selection-placeholder"><!----></span></div>
                            <!---->
                            <!---->
                        </div>
                    </div>
                </section>
                <section class="code-box-meta markdown">
                    <div class="code-box-title"><a href="#components-auto-complete-demo-uncertain-category">查询模式 - 不确定类目</a></div>
                    <div class="code-box-description">
                        <p>查询模式 - 不确定类目。</p>
                    </div>
                </section>
                <section class="highlight-wrapper">
                    <div class="highlight">
                        <pre class="language-vue"><code><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>template</span><span class="token punctuation">&gt;</span></span>
  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>div</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>global-search-wrapper<span class="token punctuation">"</span></span> <span class="token special-attr"><span class="token attr-name">style</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span><span class="token value css language-css"><span class="token property">width</span><span class="token punctuation">:</span> 300px</span><span class="token punctuation">"</span></span></span><span class="token punctuation">&gt;</span></span>
    <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>a-auto-complete</span>
      <span class="token attr-name"><span class="token namespace">v-model:</span>value</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>value<span class="token punctuation">"</span></span>
      <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>global-search<span class="token punctuation">"</span></span>
      <span class="token attr-name">size</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>large<span class="token punctuation">"</span></span>
      <span class="token special-attr"><span class="token attr-name">style</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span><span class="token value css language-css"><span class="token property">width</span><span class="token punctuation">:</span> 100%</span><span class="token punctuation">"</span></span></span>
      <span class="token attr-name">option-label-prop</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>title<span class="token punctuation">"</span></span>
      <span class="token attr-name">@select</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>onSelect<span class="token punctuation">"</span></span>
      <span class="token attr-name">@search</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>handleSearch<span class="token punctuation">"</span></span>
    <span class="token punctuation">&gt;</span></span>
      <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>template</span> <span class="token attr-name">#dataSource</span><span class="token punctuation">&gt;</span></span>
        <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>a-select-option</span> <span class="token attr-name">v-for</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>item in dataSource<span class="token punctuation">"</span></span> <span class="token attr-name">:key</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>item.category<span class="token punctuation">"</span></span> <span class="token attr-name">:title</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>item.category<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span>
          Found {{ item.query }} on
          <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>a</span>
            <span class="token attr-name">:href</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>`https://s.taobao.com/search?q=${item.query}`<span class="token punctuation">"</span></span>
            <span class="token attr-name">target</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>_blank<span class="token punctuation">"</span></span>
            <span class="token attr-name">rel</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>noopener noreferrer<span class="token punctuation">"</span></span>
          <span class="token punctuation">&gt;</span></span>
            {{ item.category }}
          <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>a</span><span class="token punctuation">&gt;</span></span>
          <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>span</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>global-search-item-count<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span>{{ item.count }} results<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>span</span><span class="token punctuation">&gt;</span></span>
        <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>a-select-option</span><span class="token punctuation">&gt;</span></span>
      <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>template</span><span class="token punctuation">&gt;</span></span>
      <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>a-input-search</span> <span class="token attr-name">size</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>large<span class="token punctuation">"</span></span> <span class="token attr-name">placeholder</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>input here<span class="token punctuation">"</span></span> <span class="token attr-name">enterButton</span><span class="token punctuation">&gt;</span></span><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>a-input-search</span><span class="token punctuation">&gt;</span></span>
    <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>a-auto-complete</span><span class="token punctuation">&gt;</span></span>
  <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>div</span><span class="token punctuation">&gt;</span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>template</span><span class="token punctuation">&gt;</span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>script</span> <span class="token attr-name">lang</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>ts<span class="token punctuation">"</span></span><span class="token punctuation">&gt;</span></span><span class="token script"><span class="token language-javascript">
<span class="token keyword">import</span> <span class="token punctuation">{</span> defineComponent<span class="token punctuation">,</span> ref <span class="token punctuation">}</span> <span class="token keyword">from</span> <span class="token string">'vue'</span><span class="token punctuation">;</span>
<span class="token keyword">interface</span> <span class="token class-name">Option</span> <span class="token punctuation">{</span>
  query<span class="token operator">:</span> string<span class="token punctuation">;</span>
  category<span class="token operator">:</span> string<span class="token punctuation">;</span>
  count<span class="token operator">:</span> number<span class="token punctuation">;</span>
<span class="token punctuation">}</span>
<span class="token keyword">export</span> <span class="token keyword">default</span> <span class="token function">defineComponent</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
  <span class="token function">setup</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
    <span class="token keyword">const</span> value <span class="token operator">=</span> <span class="token function">ref</span><span class="token punctuation">(</span><span class="token string">''</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token keyword">const</span> dataSource <span class="token operator">=</span> ref<span class="token operator">&lt;</span>Option<span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token operator">&gt;</span><span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token keyword">const</span> <span class="token function-variable function">onSelect</span> <span class="token operator">=</span> <span class="token punctuation">(</span><span class="token parameter">value<span class="token operator">:</span> string</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
      console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">'onSelect'</span><span class="token punctuation">,</span> value<span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token punctuation">}</span><span class="token punctuation">;</span> 
     <span class="token keyword">const</span> <span class="token function-variable function">getRandomInt</span> <span class="token operator">=</span> <span class="token punctuation">(</span><span class="token parameter">max<span class="token operator">:</span> number<span class="token punctuation">,</span> min <span class="token operator">=</span> <span class="token number">0</span></span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
      <span class="token keyword">return</span> Math<span class="token punctuation">.</span><span class="token function">floor</span><span class="token punctuation">(</span>Math<span class="token punctuation">.</span><span class="token function">random</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token operator">*</span> <span class="token punctuation">(</span>max <span class="token operator">-</span> min <span class="token operator">+</span> <span class="token number">1</span><span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token operator">+</span> min<span class="token punctuation">;</span>
    <span class="token punctuation">}</span><span class="token punctuation">;</span> 
     <span class="token keyword">const</span> searchResult <span class="token operator">=</span> <span class="token punctuation">(</span>query<span class="token operator">:</span> string<span class="token punctuation">)</span><span class="token operator">:</span> Option<span class="token punctuation">[</span><span class="token punctuation">]</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
      <span class="token keyword">return</span> <span class="token keyword">new</span> <span class="token class-name">Array</span><span class="token punctuation">(</span><span class="token function">getRandomInt</span><span class="token punctuation">(</span><span class="token number">5</span><span class="token punctuation">)</span><span class="token punctuation">)</span>
        <span class="token punctuation">.</span><span class="token function">join</span><span class="token punctuation">(</span><span class="token string">'.'</span><span class="token punctuation">)</span>
        <span class="token punctuation">.</span><span class="token function">split</span><span class="token punctuation">(</span><span class="token string">'.'</span><span class="token punctuation">)</span>
        <span class="token punctuation">.</span><span class="token function">map</span><span class="token punctuation">(</span><span class="token punctuation">(</span><span class="token parameter">item<span class="token punctuation">,</span> idx</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">(</span><span class="token punctuation">{</span>
          query<span class="token punctuation">,</span>
          category<span class="token operator">:</span> <span class="token template-string"><span class="token template-punctuation string">`</span><span class="token interpolation"><span class="token interpolation-punctuation punctuation">${</span>query<span class="token interpolation-punctuation punctuation">}</span></span><span class="token interpolation"><span class="token interpolation-punctuation punctuation">${</span>idx<span class="token interpolation-punctuation punctuation">}</span></span><span class="token template-punctuation string">`</span></span><span class="token punctuation">,</span>
          count<span class="token operator">:</span> <span class="token function">getRandomInt</span><span class="token punctuation">(</span><span class="token number">200</span><span class="token punctuation">,</span> <span class="token number">100</span><span class="token punctuation">)</span><span class="token punctuation">,</span>
        <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token punctuation">}</span><span class="token punctuation">;</span>
    <span class="token keyword">const</span> <span class="token function-variable function">handleSearch</span> <span class="token operator">=</span> <span class="token punctuation">(</span><span class="token parameter">val<span class="token operator">:</span> string</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
      dataSource<span class="token punctuation">.</span>value <span class="token operator">=</span> val <span class="token operator">?</span> <span class="token function">searchResult</span><span class="token punctuation">(</span>val<span class="token punctuation">)</span> <span class="token operator">:</span> <span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token punctuation">;</span>
    <span class="token punctuation">}</span><span class="token punctuation">;</span>
    <span class="token keyword">return</span> <span class="token punctuation">{</span>
      value<span class="token punctuation">,</span>
      dataSource<span class="token punctuation">,</span>
      onSelect<span class="token punctuation">,</span>
      handleSearch<span class="token punctuation">,</span>
    <span class="token punctuation">}</span><span class="token punctuation">;</span>
  <span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</span></span><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>script</span><span class="token punctuation">&gt;</span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>style</span><span class="token punctuation">&gt;</span></span><span class="token style"><span class="token language-css">
<span class="token selector">.global-search-wrapper</span> <span class="token punctuation">{</span>
  <span class="token property">padding-right</span><span class="token punctuation">:</span> 50px<span class="token punctuation">;</span>
<span class="token punctuation">}</span> 
 <span class="token selector">.global-search</span> <span class="token punctuation">{</span>
  <span class="token property">width</span><span class="token punctuation">:</span> 100%<span class="token punctuation">;</span>
<span class="token punctuation">}</span> 
 <span class="token selector">.global-search.ant-select-auto-complete .ant-select-selection--single</span> <span class="token punctuation">{</span>
  <span class="token property">margin-right</span><span class="token punctuation">:</span> -46px<span class="token punctuation">;</span>
<span class="token punctuation">}</span> 
 <span class="token selector">.global-search.ant-select-auto-complete .ant-input-affix-wrapper .ant-input:not(:last-child)</span> <span class="token punctuation">{</span>
  <span class="token property">padding-right</span><span class="token punctuation">:</span> 62px<span class="token punctuation">;</span>
<span class="token punctuation">}</span> 
 <span class="token selector">.global-search.ant-select-auto-complete .ant-input-affix-wrapper .ant-input-suffix button</span> <span class="token punctuation">{</span>
  <span class="token property">border-top-left-radius</span><span class="token punctuation">:</span> 0<span class="token punctuation">;</span>
  <span class="token property">border-bottom-left-radius</span><span class="token punctuation">:</span> 0<span class="token punctuation">;</span>
<span class="token punctuation">}</span> 
 <span class="token selector">.global-search-item</span> <span class="token punctuation">{</span>
  <span class="token property">display</span><span class="token punctuation">:</span> flex<span class="token punctuation">;</span>
<span class="token punctuation">}</span> 
 <span class="token selector">.global-search-item-desc</span> <span class="token punctuation">{</span>
  <span class="token property">flex</span><span class="token punctuation">:</span> auto<span class="token punctuation">;</span>
  <span class="token property">text-overflow</span><span class="token punctuation">:</span> ellipsis<span class="token punctuation">;</span>
  <span class="token property">overflow</span><span class="token punctuation">:</span> hidden<span class="token punctuation">;</span>
<span class="token punctuation">}</span> 
 <span class="token selector">.global-search-item-count</span> <span class="token punctuation">{</span>
  <span class="token property">flex</span><span class="token punctuation">:</span> none<span class="token punctuation">;</span>
<span class="token punctuation">}</span>
</span></span><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>style</span><span class="token punctuation">&gt;</span></span>
</code></pre>
                    </div>
                </section>
            </section>
        </div>
    </div> 
    <section class="markdown api-container">
        <h2 id="API"><span>API</span><a href="#API" class="anchor">#</a></h2> 
         <pre class="language-html" v-pre=""><code><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>a-auto-complete</span> <span class="token attr-name"><span class="token namespace">v-model:</span>value</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>value<span class="token punctuation">"</span></span> <span class="token attr-name">:options</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>options<span class="token punctuation">"</span></span> <span class="token punctuation">/&gt;</span></span>
</code></pre>
        <table class="docTable">
            <thead>
                <tr>
                    <th>参数</th>
                    <th>说明</th>
                    <th>类型</th>
                    <th>默认值</th>
                    <th>版本</th>
                </tr>
            </thead>
            <tbody>
                <tr>
                    <td>allowClear</td>
                    <td>支持清除, 单选模式有效</td>
                    <td>boolean</td>
                    <td>false</td>
                    <td></td>
                </tr>
                <tr>
                    <td>autofocus</td>
                    <td>自动获取焦点</td>
                    <td>boolean</td>
                    <td>false</td>
                    <td></td>
                </tr>
                <tr>
                    <td>backfill</td>
                    <td>使用键盘选择选项的时候把选中项回填到输入框中</td>
                    <td>boolean</td>
                    <td>false</td>
                    <td></td>
                </tr>
                <tr>
                    <td>#default (自定义输入框)</td>
                    <td>自定义输入框</td>
                    <td>HTMLInputElement / HTMLTextAreaElement</td>
                    <td><code>&lt;Input /&gt;</code></td>
                    <td></td>
                </tr>
                <tr>
                    <td>options</td>
                    <td>自动完成的数据源</td>
                    <td>slot | <a href="https://github.com/vueComponent/ant-design-vue/blob/724d53b907e577cf5880c1e6742d4c3f924f8f49/components/auto-complete/index.vue#L9" target="_blank" rel="noopener noreferrer">DataSourceItemType</a>[]</td>
                    <td></td>
                    <td></td>
                </tr>
                <tr>
                    <td>dropdownMenuStyle</td>
                    <td>dropdown 菜单自定义样式</td>
                    <td>object</td>
                    <td></td>
                    <td>1.5.0</td>
                </tr>
                <tr>
                    <td>defaultActiveFirstOption</td>
                    <td>是否默认高亮第一个选项。</td>
                    <td>boolean</td>
                    <td>true</td>
                    <td></td>
                </tr>
                <tr>
                    <td>disabled</td>
                    <td>是否禁用</td>
                    <td>boolean</td>
                    <td>false</td>
                    <td></td>
                </tr>
                <tr>
                    <td>filterOption</td>
                    <td>是否根据输入项进行筛选。当其为一个函数时，会接收 <code>inputValue</code> <code>option</code> 两个参数，当 <code>option</code> 符合筛选条件时，应返回 <code>true</code>，反之则返回 <code>false</code>。</td>
                    <td>boolean or function(inputValue, option)</td>
                    <td>true</td>
                    <td></td>
                </tr>
                <tr>
                    <td>optionLabelProp</td>
                    <td>回填到选择框的 Option 的属性值，默认是 Option 的子元素。比如在子元素需要高亮效果时，此值可以设为 <code>value</code>。</td>
                    <td>string</td>
                    <td><code>children</code></td>
                    <td></td>
                </tr>
                <tr>
                    <td>placeholder</td>
                    <td>输入框提示</td>
                    <td>string | slot</td>
                    <td>-</td>
                    <td></td>
                </tr>
                <tr>
                    <td>v-model:value</td>
                    <td>指定当前选中的条目</td>
                    <td>string|string[]|{ key: string, label: string|vNodes }|Array&lt;{ key: string, label: string|vNodes }&gt;</td>
                    <td>无</td>
                    <td></td>
                </tr>
                <tr>
                    <td>defaultOpen</td>
                    <td>是否默认展开下拉菜单</td>
                    <td>boolean</td>
                    <td>-</td>
                    <td></td>
                </tr>
                <tr>
                    <td>open</td>
                    <td>是否展开下拉菜单</td>
                    <td>boolean</td>
                    <td>-</td>
                    <td></td>
                </tr>
            </tbody>
        </table>
        <h3 id="事件">事件</h3>
        <table class="docTable">
            <thead>
                <tr>
                    <th>事件名称</th>
                    <th>说明</th>
                    <th>回调参数</th>
                    <th>版本</th>
                </tr>
            </thead>
            <tbody>
                <tr>
                    <td>change</td>
                    <td>选中 option，或 input 的 value 变化时，调用此函数</td>
                    <td>function(value)</td>
                    <td></td>
                </tr>
                <tr>
                    <td>blur</td>
                    <td>失去焦点时的回调</td>
                    <td>function()</td>
                    <td></td>
                </tr>
                <tr>
                    <td>focus</td>
                    <td>获得焦点时的回调</td>
                    <td>function()</td>
                    <td></td>
                </tr>
                <tr>
                    <td>search</td>
                    <td>搜索补全项的时候调用</td>
                    <td>function(value)</td>
                    <td></td>
                </tr>
                <tr>
                    <td>select</td>
                    <td>被选中时调用，参数为选中项的 value 值</td>
                    <td>function(value, option)</td>
                    <td></td>
                </tr>
                <tr>
                    <td>dropdownVisibleChange</td>
                    <td>展开下拉菜单的回调</td>
                    <td>function(open)</td>
                    <td></td>
                </tr>
            </tbody>
        </table>
        <h2 id="方法">方法</h2>
        <table class="docTable">
            <thead>
                <tr>
                    <th>名称</th>
                    <th>描述</th>
                    <th>版本</th>
                </tr>
            </thead>
            <tbody>
                <tr>
                    <td>blur()</td>
                    <td>移除焦点</td>
                    <td></td>
                </tr>
                <tr>
                    <td>focus()</td>
                    <td>获取焦点</td>
                    <td></td>
                </tr>
            </tbody>
        </table> 
     </section>
</article>