#typescript
Вопрос:
Я получаю Не удается найти пространство имен ‘AppStateContext’.ts(2503) в AppStateContext.Строка провайдера любая идея, что вызывает это, кажется, по какой-то причине она не может видеть переменную.
import React, { useState, createContext } from 'react';
type AppStateValue = {
darktheme: boolean;
};
const defaultSataeValue: AppStateValue = {
darktheme: false,
};
export const AppStateContext = createContext(defaultSataeValue);
const AppStateProvider: React.FC = () => {
return <AppStateContext.Provider value={{}}></AppStateContext.Provider>;
};
// Tsconfig.json
{
"compilerOptions": {
"target": "es5",
"module": "esnext",
"lib": ["dom", "dom.iterable", "esnext"],
"allowJs": true,
"skipLibCheck": true,
"esModuleInterop": true,
"allowSyntheticDefaultImports": true,
"strict": true,
"forceConsistentCasingInFileNames": true,
"noFallthroughCasesInSwitch": true,
"moduleResolution": "node",
"resolveJsonModule": true,
"isolatedModules": true,
"noEmit": true,
"jsx": "react-jsx"
},
"include": ["src"]
}
Ответ №1:
Ваш файл, вероятно, имеет .ts
расширение, TSX поддерживается только в .tsx
файлах. Просто измените свой добавочный номер, и вы должны быть готовы к работе.