【问题标题】:Why there is there an error when using React strict mode?为什么使用 React 严格模式时会出现错误?
【发布时间】:2021-03-04 17:35:32
【问题描述】:

在这里反应新手

我收到了这个错误:

TypeError:无法读取未定义的属性“StrictMode”

我认为这是因为 re 'React.StrictMode' React 没有定义。当注释掉提到 React.StrictMode 的两行代码时,代码工作正常。做了一些实验,我发现问题出在导入上。

import {React, useState} from 'react'; 不导入 React 导致它未定义并且这部分代码出错:

ReactDOM.render(
  <React.StrictMode>
    <App />
  </React.StrictMode>,
  document.getElementById('root')
);

这样做:

import React from 'react';
import {useState} from 'react';

没问题。

我想知道为什么第一种方法不起作用

感谢您的帮助!

【问题讨论】:

  • React 是默认导出,所以你不能像 import {React, useState} from 'react' 这样导入它 import React,{ useState} from 'react'

标签: reactjs


【解决方案1】:

React 是默认导出(导出语句如下所示 - export default react)。如果是默认导出,那么应该像这样导入import React from 'react'

useState 不是默认导出(导出语句类似于 - export useState;)。如果不是默认导出,则应该像这样导入import {useState} from 'react';

此博客将帮助https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import获得更详细的解释

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-03-20
    • 2020-04-28
    • 2019-11-03
    • 2021-06-26
    • 1970-01-01
    • 1970-01-01
    • 2021-04-18
    • 1970-01-01
    相关资源
    最近更新 更多