gpt4 book ai didi

reactjs - React 未定义(无法读取未定义的属性 'createElement')

转载 作者:行者123 更新时间:2023-12-02 13:58:10 25 4
gpt4 key购买 nike

我正在尝试将正在运行的 ReactJS 应用程序转换为 TypeScript,但在让任何内容正常工作时遇到了一些问题。

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 /> 处抛出错误

当我像这样导入 React 时,React 会加载:

import * as React from "react";

但是,我想使用默认导出的 import 语句,因为我在所有现有组件中使用此导入语法导入 React:

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;

不确定我在这里缺少什么......

最佳答案

改为设置"esModuleInterop": true

关于reactjs - React 未定义(无法读取未定义的属性 'createElement'),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47493958/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com