feat: Replace this.$refs.refName as Vue with InstanceType<T> (no-changelog) (#6050)

* refactor: use InstanceType<T> for all this.$refs types

* refactor: update refs type in N8nSelect

* fix: remove inputRef non-null assertion

Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com>

* fix: remove non-null assertion

---------

Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com>
This commit is contained in:
Alex Grozav
2023-04-21 16:59:04 +03:00
committed by GitHub
parent 19f540ecf9
commit 54f99a7d0d
41 changed files with 427 additions and 318 deletions

View File

@@ -35,6 +35,8 @@ import VueAgile from 'vue-agile';
import { genericHelpers } from '@/mixins/genericHelpers';
import mixins from 'vue-typed-mixins';
type SliderRef = InstanceType<typeof VueAgile>;
export default mixins(genericHelpers).extend({
name: 'CollectionsCarousel',
props: {
@@ -97,22 +99,23 @@ export default mixins(genericHelpers).extend({
},
mounted() {
this.$nextTick(() => {
const slider = this.$refs.slider;
if (!slider) {
const sliderRef = this.$refs.slider as SliderRef | undefined;
if (!sliderRef) {
return;
}
// @ts-ignore
this.listElement = slider.$el.querySelector('.agile__list');
this.listElement = sliderRef.$el.querySelector('.agile__list');
if (this.listElement) {
this.listElement.addEventListener('scroll', this.updateCarouselScroll);
}
});
},
beforeDestroy() {
if (this.$refs.slider) {
// @ts-ignore
this.$refs.slider.destroy();
const sliderRef = this.$refs.slider as SliderRef | undefined;
if (sliderRef) {
sliderRef.destroy();
}
window.removeEventListener('scroll', this.updateCarouselScroll);
},
});