Как использовать микроданные в React + Typescript? - PullRequest
4 голосов
/ 08 июня 2019

Когда я добавляю itemscope itemtype="http://schema.org/Product" к h1, я получаю эту ошибку:

Type '{children: string;itemscope: true;тип элемента: строка;} «нельзя назначить типу» DetailHTMLProps».Свойство itemscope не существует в типе DetailHTMLProps'

<h1 itemscope itemtype="http://schema.org/Product">Amasia</h1>

Как использовать микроданные в React + Typescript?

Ответы [ 2 ]

2 голосов
/ 08 июня 2019

Если вы используете машинопись, вы должны написать так

<h1 itemScope itemType={"http://schema.org/Product"}>{...}</h1>
0 голосов
/ 08 июня 2019

Не очень элегантно, но это работает:

// foo.d.ts
declare namespace React {
    interface HTMLAttributes<T> {
        itemscope?: boolean;
        itemtype?: string;
    }
}
// app.tsx
function foo(): JSX.Element {
    return (
        <h1 itemscope itemtype="http://schema.org/Product">
            Amasia
        </h1>
    );
}

У меня работает (Typescript 3.4.5).

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