为什么在JavaScript文件中未定义“ this”

时间:2020-11-04 21:04:20

标签: javascript reactjs module babeljs react-dom

我不确定为什么console.log(this)在javascript文件中返回undefined。它不应该是全局对象,因为它不在函数内部。与模块有关吗?

Index.html

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>React App</title>
    <script src="node_modules/react/umd/react.development.js"></script>
    <script src="node_modules/react-dom/umd/react-dom.development.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/babel-standalone/6.17.0/babel.min.js"></script>
  </head>
  <body>
    <div id="app"></div> 
    <script type="text/babel" src="./src/components/Child.js"></script>
    <script type="text/babel" src="./App.js"></script>
  </body>
</html>

App.js

console.log(this)

const App = () => <Child />

ReactDOM.render(<App />, document.getElementById('app'))

Child.js

console.log(this)

const Child = () => 
  <div>
    <h3>Child</h3>
  </div>

两个console.log(this)通话记录undefined

0 个答案:

没有答案