Vue.js Vue Slick转盘计算出的财产问题
Vue slick carousel一开始工作正常。它从computed属性获取列表,因为用户有一个筛选选项。若用户在搜索框中键入内容,则项目将被筛选。问题就在这一点上。一旦用户通过从搜索框中删除字符来删除过滤器,carousel就会复制渲染列表。我的意见是,首先我需要摧毁旋转木马,然后重新创建它,但没有运气。在官方文件中,有一个技巧。根据docVue.js Vue Slick转盘计算出的财产问题,vue.js,nuxt.js,vue-slider-component,Vue.js,Nuxt.js,Vue Slider Component,Vue slick carousel一开始工作正常。它从computed属性获取列表,因为用户有一个筛选选项。若用户在搜索框中键入内容,则项目将被筛选。问题就在这一点上。一旦用户通过从搜索框中删除字符来删除过滤器,carousel就会复制渲染列表。我的意见是,首先我需要摧毁旋转木马,然后重新创建它,但没有运气。在官方文件中,有一个技巧。根据docreSlick()应更新转盘。但它不适用于计算属性。有人帮忙吗 <VueSlickCarousel v-if="filteredLi
reSlick()
应更新转盘。但它不适用于计算属性。有人帮忙吗
<VueSlickCarousel
v-if="filteredList.length > 0"
ref="slick"
v-bind="settings"
@reInit="reInit"
>
<div
v-for="item in filteredList"
:key="item.id"
>item.title</div>
</VueSlickCarousel>
computed: {
filteredList() {
const list = this.$t('integrations.' + this.area + '.grid');
if (this.term) {
return list.filter((item) => {
return item.title.toLowerCase().includes(this.term.toLowerCase());
});
}
return list;
},
},
methods: {
reInit() {
if (this.$refs.slick) {
this.$nextTick(() => {
this.$refs.slick.reSlick();
});
}
},
},
项目名称
计算:{
过滤器列表(){
常量列表=this.$t('integrations.+this.area+'.grid');
如果(本术语){
返回列表。筛选器((项目)=>{
return item.title.toLowerCase().includes(this.term.toLowerCase());
});
}
退货清单;
},
},
方法:{
雷尼特(){
如果(此$refs.slick){
这个.$nextTick(()=>{
这是。$refs.slick.reSlick();
});
}
},
},