является ли состав vuejs2.x api полностью совместимым с машинописью? - PullRequest
1 голос
/ 23 января 2020

Недавно я перенес наш vue .js2.x проект на машинопись и, основываясь на комментариях evan-you в этом выпуске:

https://github.com/vuejs/rfcs/pull/17#issuecomment -494242121

Предложение Class API отбрасывается. поэтому я использую обычную версию vue. js, основанную на опциях, которая столкнулась со многими проблемами типа.

Я хочу знать, является ли состав vuejs2.x API полностью совместимым с машинописью? и я должен использовать это, чтобы решить всю проблему? Какую практику лучше использовать в этой ситуации?

Ответы [ 2 ]

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

Я не уверен, что означает «полностью совместимый с TypeScript». Но вы определенно можете использовать TypeScript с API композиции Vue, а TypeScript помогает улучшить код и опыт разработчика.

Вот пример использования плагина композиции с Vue 2 :

import { computed, createComponent, reactive } from "@vue/composition-api";

export default createComponent({
  name: "Hello",

  template: `<p>{{ state.message }}</p>`,

  props: {
    name: {
      type: String,
      required: true
    }
  },

  setup(props, context) {
    const state = reactive({
      message: computed(() => `Hello, ${props.name}!`)
    });
    return {
      state
    };
  }
});

Весь код выше набран хорошо. API композиции (здесь: createComponent, reactive, computed) предоставляется с правильными типами. Обратите внимание, что с составным API нам больше не нужно использовать this.

0 голосов
/ 23 января 2020

Да, Vue. js совместим с TypeScript, поскольку CLI Vue обеспечивает встроенную поддержку инструментария TypeScript. Он просто должен быть установлен через npm или yarn, как указано здесь , тем самым ему не понадобятся дополнительные инструменты для использования TS с Vue. Есть также некоторые объяснения о рекомендуемой конфигурации и basi c использование , включенных в данные ссылки.

...