Как создать функциональный компонент в vuejs с Typescript - PullRequest
0 голосов
/ 16 ноября 2018

Я хочу создать функциональный компонент в vuejs с машинописью. Однако я не уверен, как настроить общую часть так, чтобы я мог получить доступ к моим реквизитам. У меня есть это до сих пор:

import Vue, { FunctionalComponentOptions } from 'vue';

export default Vue.component<FunctionalComponentOptions>('MyWrapper', {
    functional: true,
    render: (createElement, context) => {

        if (context.props['flagSet']) {
            console.log('flagset');
        }

        return createElement('div', context.data, context.children);
    }
});

Ошибка, которую я получаю для строки context.props: Element implicitly has an 'any' type because type 'FunctionalComponentOptions<Record<string, any>, PropsDefinition<Record<string, any>>>' has no index signature.

Что я не знаю, как решить.

1 Ответ

0 голосов
/ 16 ноября 2018

Правильный способ сделать эту работу для приведенного выше кода - передать интерфейс, описывающий реквизиты.

interface IProps {
    flagSet: string;
}

export default Vue.component<IProps>

Оглядываясь назад на исходный вопрос, я не совсем уверен, почему я пыталсяподключите FunctionalComponentOptions в качестве параметра типа.Я виню ночной сеанс кодирования.:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...