首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >进口ES6的性能

进口ES6的性能
EN

Stack Overflow用户
提问于 2020-03-23 06:22:44
回答 1查看 142关注 0票数 1

响应引导文档中,建议模块单独从单个分发文件中导入,而不是从较大的分发文件中导入。

代码语言:javascript
复制
import Button from 'react-bootstrap/Button';

// or less ideally
import { Button } from 'react-bootstrap';

为什么第二种方法不太理想?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-03-23 06:25:10

正如该链接所述:

您应该导入单个组件,比如:react-bootstrap/Button,而不是整个库。这样做只会引入您使用的特定组件,这将显著减少最终发送到客户端的代码数量。

如果您从react-bootstrap导入,客户端将不得不下载react-bootstrap中的所有内容。这可能会成为相当大的代码块。相反,如果您从react-bootstrap/Button导入,则需要下载的只是按钮--不包含任何无关的内容。

比较文件:

https://github.com/react-bootstrap/react-bootstrap/blob/master/src/Button.js

https://github.com/react-bootstrap/react-bootstrap/blob/master/src/index.js

如您所见,从Button导入需要几个导入:

代码语言:javascript
复制
import classNames from 'classnames';
import React from 'react';
import PropTypes from 'prop-types';

import { useBootstrapPrefix } from './ThemeProvider';
import SafeAnchor from './SafeAnchor';

但是从index.js导入需要大量的导入,准确地说,是77

代码语言:javascript
复制
export Accordion from './Accordion';
export AccordionToggle, { useAccordionToggle } from './AccordionToggle';
export AccordionCollapse from './AccordionCollapse';
export Alert from './Alert';
export Badge from './Badge';
// and 72 more

如果您从index而不是从Button导入,那么您正在下载许多您不需要的代码,没有什么好的理由。

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

https://stackoverflow.com/questions/60808774

复制
相关文章

相似问题

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