полностью ли совместима api композиции vuejs2.x с машинописным текстом?
Недавно я перевел наш проект vue.js2.x на машинописный текст и на основе комментария evan-you в этом выпуске:
https://github.com/vuejs/rfcs/pull/17
Предложение Class API отклоняется. поэтому я использую обычную версию vue.js, основанную на опциях, которая столкнулась со многими проблемами типа.
Я хочу знать, полностью ли совместима api композиции vuejs2.x с машинописным текстом? и я должен использовать его для решения всех проблем? что лучше всего делать в этой ситуации?
2 ответа
Я не уверен, что означает "полностью совместим с 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
больше.
Да, Vue.js совместим с TypeScript, поскольку Vue CLI предоставляет встроенную поддержку инструментов TypeScript. Его просто нужно установить черезnpm
или yarn
, как указано здесь, при этом не потребуется никаких дополнительных инструментов для использования TS с Vue. По указанным ссылкам также есть некоторые пояснения по рекомендуемой конфигурации и базовому использованию.