什么是刷新我的Vue.js组件的最佳方法

问题描述 投票:0回答:1

我在搜索页面上有一个文本框和搜索按钮。

我使用Vue.js创建了一个构面。第一次搜索时,一切都正常,但是当我对另一文本进行数字输入并搜索时,我的方面未使用新值进行更新。

我尝试遵循此步骤,但未成功:https://michaelnthiessen.com/force-re-render/

有人能救我吗?

function CreateFacetSiteSearch(resultsFacet) {
    new Vue({
        el: '#facets',
        data() {
            return {
                facets: resultsFacet.Facets,
                totalresults: resultsFacet.TotalNumberOfResults
            }
        }
    });
}

CreateFacetSiteSearch(results); => I call this function everytime that I search for a new text.

<div class="search-filter-container" id="facets" v-if="totalresults > 0">
   <div class="links-container">
            <a href="#" v-for="item in facets" onclick="CallSearchFacet(this)" :result-field-name="item.Item1" :result-count="item.Item2">{{ item.Item1 }} ({{ item.Item2 }})</a>
   </div>
 </div>
javascript vue.js
1个回答
0
投票

尝试这个魔术咒语:

vm.$forceUpdate();

您也可以使用:key="someVariableUnderYourControl"并在要完全重建组件时更改密钥。

参考:Can you force Vue.js to reload/re-render?

© www.soinside.com 2019 - 2024. All rights reserved.