当前位置: 首页 > 知识库问答 >
问题:

如何在React Library“material ui”的第4页中让树震动工作?

艾谦
2023-03-14

虽然我按照文档中解释的步骤(参见此处)启用了树抖动,但它似乎没有任何效果。我将webpack4ts加载程序一起使用TypeScript。所涉及的库是材质ui。在他们的文档中(参见如何减小捆绑包大小?),他们建议“直接从材料ui导入/,以避免引入未使用的模块”,然后他们添加了“这两个选项都应该是临时的,直到您向项目中添加树震动功能。”。所以我认为树木晃动应该会有一些影响。

需要明确的是:他们建议像这样导入:

import RaisedButton from "material-ui/RaisedButton";

而不是像这样:

import {RaisedButton} from "material-ui";

我所做的:

  • 仅使用ES2015模块语法(即导入和导出)。
  • 在我的项目的package.json文件中添加了一个的"side效果":false条目。并确保拼写正确。
  • 运行Webpack在模式:生产,这是Webpack 4允许使用代替乌干达的JsPlugin(作为webpack 4,这也很容易切换通过模式配置选项,设置为生产。)

结果:什么都没有。不缩小尺寸。也许我做错了什么?

对于基准测试爱好者:就捆绑包大小而言,这就是单个RaisedButton的成本。没有缩小(即生产模式):

Initial (in mode "development"): 
1,63 MiB (No Material UI)

MuiThemeProvider
1,94 MiB -> +0,31 (`import {MuiThemeProvider} from "material-ui/styles";`)
1,92 MiB -> +0,29 (`import MuiThemeProvider from 'material-ui/styles/MuiThemeProvider';`)

RaisedButton
3,07 MiB -> +1,13 (`import {RaisedButton} from "material-ui";`)
2,03 MiB -> +0,09 (`import RaisedButton from "material-ui/RaisedButton";`)

和缩小(无压缩):

Initial (in mode "production"):
284 KiB (No Material UI)

MuiThemeProvider
371 KiB -> +087 (`import {MuiThemeProvider} from "material-ui/styles";`)
367 KiB -> +077 (`import MuiThemeProvider from 'material-ui/styles/MuiThemeProvider';`)

RaisedButton
705 KiB -> +338 (`import {RaisedButton} from "material-ui";`)
400 KiB -> +033 (`import RaisedButton from "material-ui/RaisedButton";`)

并且启用了树震动:

705 KiB (`import {RaisedButton} from "material-ui";`)
400 KiB (`import RaisedButton from "material-ui/RaisedButton";`)

即:完全没有效果。


共有1个答案

赏彭薄
2023-03-14

正如@qx3所写,我已经能够通过添加以下内容来实现:

alias: { '@material-ui/core': '@material-ui/core/es' }

在我的webpack配置。

请注意“@”前缀和“/core”后缀以适应库的新命名。这个简单的小东西帮助我去掉了一些字节,使团队能够以完全符合esm的方式编写“@material ui/core”导入。

 类似资料:
  • 不知道为什么摇树没有像我预期的那样有效。。。我的目标是建立一个

  • 我一直试图学习如何编写树摇动友好的代码,但遇到了一个不可避免的副作用的问题,我不知道如何处理。 在我的一个模块中,我访问全局构造函数,并使用它来确定浏览器可以播放哪些音频文件(类似于现代的方式)。每当我尝试树形摇动我的代码时,元素和对它的所有引用都不会被删除,即使我没有在我的文件中导入模块。 我知道包含副作用的代码无法消除,但我找不到的是如何处理不可避免的副作用。我不能不访问全局对象来创建检测功能

  • 问题 与<Binary Tree DP>类似,对于拥有 n 个节点的多叉树,其节点下标范围为 [0,n) ,节点 i 的权值为 v_i ( v_i gt 0 ),整个多叉树的权值为所有节点的权值之和。现在要求只保留 m 个节点( 0 lt m lt n ),剪裁掉 n-m 个节点,要求剩余部分仍然是一个多叉树,而不能是多个树。 对于拥有 n 个节点的多叉树,求出保留 m 个节点的多叉树的最大权值。

  • 问题 拥有 n 个节点的二叉树,节点下标范围为 [0,n) ,节点 i 的权值为 v_i ( v_i gt 0 ),整个二叉树的权值为所有节点的权值之和。现在要求只保留 m 个节点( 0 lt m lt n-1 ),剪裁掉的节点数量为 n-1-m ,要求剩余部分仍然是一个二叉树,而不能是多个二叉树。如图: (1) 正确剪裁 (2) 正确剪裁 (3) 错误剪裁 图 (1) 和 (2) 剪裁后的剩余部

  • 我写了一个Android应用程序。现在,我想让设备在某个动作发生时振动。我怎么能这么做?

  • 问题 在一个二叉树上,从任意节点 i 到达另一个任意节点 j 的路线是唯一的。假设该二叉树上的每个节点都是一个牧场,而每个牧场中都有一只奶牛,节点 i 的奶牛拥有一个权值,为 vi ,奶牛会在二叉树上游荡,但它游荡的位置不超过一个距离,为 Dist 。节点 i 的牧场上拥有的奶牛数量并不固定,可能拥有 0 只奶牛,那么节点 i 拥有的权值为 0 ;可能拥有 n 只奶牛,那么节点 i 拥有的权值为这