Skip to content

typescript troubles #71

@rlindner81

Description

@rlindner81

I'm getting an odd typescript error, when using your slider in my vue3 (typescript) project.

src/components/MinExample.vue:3:6 - error TS2322: Type '{ min: number; max: number; step: number; modelValue: number; disabled: true; }' is not assignable to type 'ComponentProps<typeof import("/Users/rlindner/dev/tracker/frontend/node_modules/@vueform/slider/src/Slider")>'.
  Property 'Slider' is missing in type '{ min: number; max: number; step: number; modelValue: number; disabled: true; }' but required in type 'typeof import("/Users/rlindner/dev/tracker/frontend/node_modules/@vueform/slider/src/Slider")'.

3     <Slider :min="0" :max="1000" :step="1" v-model="value" :disabled="true" />
       ~~~~~~

  node_modules/@vueform/slider/src/Slider.d.ts:33:1
    33 export default Slider;
       ~~~~~~~~~~~~~~~~~~~~~~
    'Slider' is declared here.


Found 1 error in src/components/MinExample.vue:3

You can reproduce it based on the basic vue3 template
npm create vue say yes to typescript and try to build something with the following component:

<template>
  <div>
    <Slider :min="0" :max="1000" :step="1" v-model="value" :disabled="true" />
    <span>${value}</span>
  </div>
</template>

<script lang="ts">
import Slider from "@vueform/slider";
export default {
  components: {
    Slider,
  },
  data() {
    return {
      value: 10,
    };
  },
};
</script>

<style src="@vueform/slider/themes/default.css"></style>

Unfortunately the only workaround I found as to disable typescript completely for any component that uses the Slider.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions