ошибка ts2339: как использовать набор текста в vuejs проекте? - PullRequest
0 голосов
/ 20 января 2020

Я недавно преобразовал свой vuejs в базу машинописи, но теперь у меня проблема с использованием mixin в машинописи. я использовал два типа mixin, но ни один не работал для меня, и он показывает ошибку ts2339, и я не смог найти решение на https://vuejs.org/v2/guide/typescript.html#Basic -Использование : enter image description here первый:

//mixin.ts
import {ViewState} from "@/types";
import {mocked_view_state} from "@/api/mock/profile.device.group.mock";

export const ProfileDeviceGroup = {
  methods: {
    resetViewState(): ViewState {
      return mocked_view_state;
    }
  }
};

второй:

//mixin.ts
import Vue from "vue";
import {ViewState} from "@/types";
import {mocked_view_state} from "@/api/mock/profile.device.group.mock";

const ProfileDeviceGroup = Vue.extend({
  methods: {
    resetViewState(): ViewState {
      return mocked_view_state;
    },

  }
});
export default ProfileDeviceGroup;

Итак, есть ли способ решить эту проблему?

............. .

Обновление:

..............

после использования vue -тип-миксинов , проблема была решена, но другая проблема показывает, как вы можете видеть на картинке ниже: enter image description here

Ответы [ 2 ]

1 голос
/ 20 января 2020

Вы можете использовать пакет типа vue -type-mixins или перейти к шаблону Vue компонента и использовать implements.

@Component
export default class ComponentWithMixins extends Vue implements MyMixin {}

Если вы используете vue-property-decorator, он также имеет встроенную поддержку для миксов:

@Component
export default class ComponentWithMixins extends mixins(MyMixin) {}
0 голосов
/ 25 января 2020

на основе этой проблемы https://github.com/ktsn/vue-typed-mixins/issues/4, которую я создал в github vue -typed-mixins, это нерешенная проблема, которую, по мнению автора, должен исправить плагин webstorm и Vuetr, а ее нет относится к vue -тип-миксинам. Тем не менее, я думаю, что проблема по-прежнему связана с плагином vue -typed-mixins, но я надеюсь, что проблема будет решена в ближайшее время, и следует поблагодарить автора команды vue -typed-mixins, команды webstorm и Vuetr.

для тех, кто (как и я) хочет продолжать использовать vue + typcript, кажется, есть лучший способ решить эти проблемы, а именно vue2-состав-api , который есть в некоторых командах использовал и сказал мне, что это нормально с машинописью и не имеет проблем, так как больше нет необходимости использовать mixin. Является ли состав vuejs2.x API полностью совместимым с машинописным текстом?

Надеюсь, это сработает ...

...