babel-plugin-import
babel-plugin-import copied to clipboard
cra2+typescript,使用这插件似乎无效?用和不用build出来体积几乎一样
直接修改node_modules/react-scripts/webpack.config.js测试:
test: /\.(js|mjs|jsx|ts|tsx)$/,
include: paths.appSrc,
loader: require.resolve('babel-loader'),
...
plugins: [
['import', { 'libraryName':'antd','style':'css' }],
['@babel/plugin-proposal-decorators', { 'legacy': true }],
...
网上搜了一圈,还有不少是针对ts-loader的配置教程,但是cra2现在都不用ts-loader了?直接用babel-loader通吃js/ts? 那使用antd的话如何做到按需加载呢……
多次试验,发现: 1、即使不加这个插件,antd/lib下的组件也都按需加载了(通过source-map-explorer报表知) -_-! 2、但是不加这个插件,antd.css不会自动加载,可以手动导入,也可以通过这个插件来自动加载 3、无论加不加这个插件,ant-design/icons都全部被加进来了,高达480KB,最大的大头。
奇怪 ,我再试了下,即使创建一个普通的js工程,也不需要插件就自动按需载入了。这是为啥呢。。
antd 的icon 也有部分问题