[英]es6 export throws Parsing error: Unexpected token
import React, { Component } from 'react';
import logo from './logo.svg';
import './App.css';
class App extends Component {
render() {
return (
<div className="App">
<header className="App-header">
<img src={logo} className="App-logo" alt="logo" />
<p>
Edit <code>src/App.js</code> and save to reload.
</p>
<a
className="App-link"
href="https://reactjs.org"
target="_blank"
rel="noopener noreferrer"
>
Learn React
</a>
</header>
</div>
);
}
};
export App
import React from 'react';
import ReactDOM from 'react-dom';
import './index.css';
import App from './App';
import * as serviceWorker from './serviceWorker';
ReactDOM.render(<App />, document.getElementById('root'));
(1)当我运行上面的代码时,我在App.js的最后一行即导出语句中得到以下错误
"parsing error:unexpected token"
即使将模块导入为
import { App } from './App';
我知道我们可以通过编写此错误来解决
export default App
代替
export App
如果我们仅将导出追加到App,如下所示
export class App extends Component {
render() {
return (
<div className="App">
<header className="App-header">
<img src={logo} className="App-logo" alt="logo" />
<p>
Edit <code>src/App.js</code> and save to reload.
</p>
<a
className="App-link"
href="https://reactjs.org"
target="_blank"
rel="noopener noreferrer"
>
Learn React
</a>
</header>
</div>
);
}
};
我无法弄清楚export statement的行为。我用google搜索,但它们只会使我更加困惑。
2)还有什么区别
export App
与
export const App
export class App
。 export class App
,这意味着您将从此模块中导出名称为“ App”的类。 然后可以按其名称将其导入,如下所示: import { App } from App.js
; export default
使传递的实体成为默认的导出实体。 这意味着当您在import语句中未指定名称时,将导入默认实体。 // App.js
export default App;
// other_module.js
import App from App.js // import default from App.js and put it into 'App' var
export const App
表示应用程序不会在从其导入的模块中更改。 export App
的语法无效,请看一下export let
澄清它们之间的区别。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.