作業中のReactJSアプリケーションをTypeScriptに変換しようとしています。しかし、私はデフォルトのエクスポートを使用してインポート文を使用したいReactが定義されていません(未定義の 'createElement'プロパティを読み取れません)
import * as React from "react";
ので、私は、このように反応する荷重に反応するインポートすると
import React from "react";
import * as ReactDOM from "react-dom";
import Application from "./Application";
console.log(React); // undefined
ReactDOM.render(
<Application/>, window.document.getElementById("application-wrapper")
);
コンソールは<Application />
でエラーがスローされます私はすべての既存のコンポーネントで、このインポートの構文を使用して反応するインポートします
import React, {Component} from "react";
export default class Whatever extends Component<Props, State> {
...
}
私tsconfig.json
ファイルは、合成のデフォルトを許可するこの行が含まれています
"allowSyntheticDefaultImports": true
マイwebpack.config.js
ファイル:
let path = require("path");
let config = {
entry: "./src/main.tsx",
output: {
path: path.resolve(__dirname, "build"),
filename: "bundle.js"
},
devtool: "source-map",
resolve: {
extensions: [".ts", ".tsx", ".js", ".jsx"]
},
module: {
loaders: [
{
test: /\.tsx?$/,
loader: "ts-loader",
exclude: /node_modules/
}
]
}
};
module.exports = config;
ない私はここに欠けているものを確認してください....
にconsole.logステートメントは実行されませんアプリケーションを実行します。インポートまたはエクスポートされる関数は実行されます。 – stack26
あなたはtsconfig.jsonを共有できますか?あなたは "モジュール"を持っていますか: "es6" – Kunukn