首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用解构导出默认用法

问使用解构导出默认用法
EN

Stack Overflow用户
提问于 2018-05-07 11:00:36
回答 2查看 153关注 0票数 0

我找到了一个代码库来做这件事。

代码语言:javascript
复制
//index.js
export { default } from './Tabs'
export { default as Tab } from './Tab'

//Tab.js
export default class Tab extends Component {
  render() => 'Something'
}

这是可以理解的,作者将Tab文件放在一个Tab文件夹下,这样在其他地方他就可以导入'./Tabs‘,但是为什么在index.js中他需要解构?

EN

回答 2

Stack Overflow用户

发布于 2018-05-07 13:27:16

许多人遵循这种命名法,索引文件只是导出,这使得导入变得更容易。

它允许您从Tabs文件夹导入,而无需明确指定index.js文件名。最重要的是,它让你只需一句话就可以从文件夹标签中导入内容。

例如:

// Tab/Tab.js

代码语言:javascript
复制
import React, { Component } from "react";

class Tab extends Component {
  render() {
    return <span>Tab</span>;
  }
}
export default Tab;

// Tab/Tabs.js

代码语言:javascript
复制
import React, { Component } from "react";

class Tabs extends Component {
  render() {
    return <span>Tabs</span>;
  }
}
export default Tabs;

// Tab/index.js

代码语言:javascript
复制
export Tab from "./Tab";
export Tabs from "./Tabs";

// Main文件

代码语言:javascript
复制
import React from "react";
import { render } from "react-dom";
import { Tab, Tabs } from "./Tab";


const App = () => (
  <div>
    <Tab />
    <Tabs />
  </div>
);

render(<App />, document.getElementById("root"));

演示:https://codesandbox.io/s/rr6klxj5j4

票数 0
EN

Stack Overflow用户

发布于 2018-05-07 13:37:56

你可以从你的文件中有一个默认的导出,也可以写

代码语言:javascript
复制
//index.js
export Tabs from './Tabs'
export Tab from './Tab'

将它们导出为命名导出,您可以稍后将其导入为

代码语言:javascript
复制
import { Tabs, Tab } from './Tabs'

此外,为了理解点默认导入与名为default的导出没有什么不同,因此当您编写

代码语言:javascript
复制
//index.js
export { default } from './Tabs'     // Exports the Tabs as default
export { default as Tab } from './Tab' // imports the default from Tab and exports it as Tab

你也可以把上面的代码写成

代码语言:javascript
复制
export { default } from './Tabs'
export Tab from './Tab'

在上述两种情况下,您可以将它们导入为

代码语言:javascript
复制
import Tabs, { Tab } from './Tabs'

有关更多细节,请查看Error Exporting a component without importing

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50206531

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档