如何知道哪些导入和模块可用

时间:2016-03-22 01:43:12

标签: javascript ecmascript-6 babeljs

我试图通过减少一些导入来减少应用程序的大小,而我所学到的一件事就是像import {foo, bar, foobar} from library那样做可以创建更大的最终捆绑而不是做更好

import foo from library/foo
import bar from library/bar
// etc

我的问题是如何知道哪些模块可用?这是否合乎标准

import React, {PropTypes} from 'react'

这样的事也应该有效吗?

import React from 'react'
import PropTypes from 'react/proptypes'

您如何知道项目中可用的模块和导出,以便仅针对您要避免执行的模块import * from module

2 个答案:

答案 0 :(得分:1)

  

这样的事情也应该有效吗?

没有。这取决于模块创建者。您最有可能使用public int computerMove() { Board tempBoard = board; int bestMove = 0; AI ai = new AI(); ai.minimax(board, difficulty, -1000000, 1000000, "computer"); return bestMove; } 进行反应,node_module可用的事实表明包中存在文件react/proptypes这一事实。

这完全取决于模块作者。

答案 1 :(得分:1)

打开npm_modules文件夹,检查它是<module-name>/<import-name>.js还是<module-name>/<import-name>/index.js
如果它有一个或另一个,你可以导入它们。

但是,Webpack 2.0更喜欢使用ES6语法。

import { foo } from "bar";

然后,它将以这种方式对来自库的任何代码进行树形摇动,这些代码尚未静态导入(或由静态代码引用)。