Nir*_*kya 7 javascript reactjs
我是新人,所以它只是一个问题,我想知道哪一个更有效,哪个给出了最佳的时间复杂性.
第1名
export default class BookingTabs extends Component {
render() {
return (
);
}
}
Run Code Online (Sandbox Code Playgroud)
第2号
class Book extends Component {
render() {
return (
);
}
}
export default Book
Run Code Online (Sandbox Code Playgroud)
问题:
它们之间没有区别。但是当您想使用一些高阶组件时,应该使用第二个组件。例如,您要对Redux应用程序使用“连接”。你必须写
class Book extends Component {
render() {
return (
);
}
}
export default connect(Book)
Run Code Online (Sandbox Code Playgroud)
* 哪一个使用起来更有效率?
他们同样高效。这是编码风格和偏好的问题。
第 1 种可以声明没有名称的类,例如
export default class extends Component {
render() {
return (
<div>markup</div>
);
}
}
Run Code Online (Sandbox Code Playgroud)
第二个提供了在导出该类之前进一步使用该类的可能性。例如添加 proptypesBook.propTypes = { /* prop-types defintion */}或与更高阶的组件一起使用。
* 哪一个花费的时间更少?甚至微秒级的差异?
您的目标可能是原生不理解 ES6 模块(导入/导出)的浏览器。编译后的代码是一样的。我建议使用https://babeljs.io/repl/来了解生成的内容
* 导出默认值和 module.export 有什么区别?
第一个是 ES6 模块(将在不久的将来被浏览器理解),后者是 NodeJS 模块(https://nodejs.org/docs/latest/api/modules.html#modules_module)。如果您四处搜索,Stackoverflow 中已经对此进行了很好的解释,例如/sf/answers/2820670191/
| 归档时间: |
|
| 查看次数: |
2789 次 |
| 最近记录: |