当前位置: 首页 > 面试题库 >

如何打开/关闭ReactJS的“开发模式”?

田骁
2023-03-14
问题内容

从使用ReactJS的prop验证功能开始,正如文档所说,出于性能原因,该功能仅在“开发模式”下有效。

React似乎正在验证我注释的特定组件的属性,但我不记得显式打开“开发模式”。

我尝试搜索如何触发/切换开发模式,但是没有任何运气。


问题答案:

对方的回答假设您使用外部预建的文件从反应,而正确的,是大多数人不会如何去或 应该 消耗作出反应,一个包。而且,在这一点上,大多数每个React库和包都
依赖相同的约定来在生产期间关闭开发人员时间助手。仅使用缩小的反应,所有这些潜在的优化也将留在桌面上。

最终,魔术归结为对process.env.NODE_ENV整个代码库的React嵌入引用。这些就像功能切换一样。

if (process.env.NODE_ENV !== "production")
  // do propType checks

上面是最常见的模式,其他库也遵循它。因此,要“禁用”这些检查,我们需要切换NODE_ENV"production"

禁用“开发模式”的正确方法是通过选择的捆绑程序。

网络包

DefinePlugin在您的webpack配置中使用,如下所示:

new webpack.DefinePlugin({
  "process.env.NODE_ENV": JSON.stringify("production")
})

浏览器

使用Envify转换并在NODE_ENV=production"set NODE_ENV=production"Windows上)中运行浏览器构建步骤

结果

这将产生输出包,其中所有实例都process.env.NODE_ENV被字符串文字替换:"production"

奖金

最小化转换后的代码时,您可以利用“消除死代码”的优势。DCE是当minifier是聪明地认识到:"production" !== "production"总是 假的,这样只会删除任何代码在if块节省您的字节。



 类似资料:
  • 我复制了一个模板从coDepen。这段代码非常过时,有一些旧的cdn链接。这意味着我必须找到这些链接的更新版本。我是如此接近使应用程序完全功能,我需要打开后关闭模式。我相信这和自举有关。链接和模态代码如下。

  • 问题内容: 我正在尝试使用$ log.debug(“ Foo”)。如何将其关闭。我在任何地方都找不到样品。我认为它需要在配置中设置,但我似乎也无法使其正常工作。 哪里设置开关? 问题答案: $ logProvider.debugEnabled(true) 仅在AngularJs 1.1.2或更高版本中可用。 https://github.com/angular/angular.js/pull/16

  • 问题内容: 我需要像这样打开/关闭模态 $(element).modal(’show’) 怎么做? 问题答案: 您正在寻找的是自定义模式触发器,该触发器使用并允许您自己管理模式状态。您可以控制是否使用模态来实现与以下示例中所要求的效果相同的效果。以下代码来自react-bootstrap网站(http://react- bootstrap.github.io/components.html#mod

  • 本文向大家介绍Android 打开关闭DrawerLayout,包括了Android 打开关闭DrawerLayout的使用技巧和注意事项,需要的朋友参考一下 示例            

  • 打开 M600 长按侧边电源按钮直至屏幕上出现 Polar 标志。 关闭 M600 导航至 Settings(设定)应用程式,滚动菜单找到并轻触 System(系统)。 轻触关机。 通过轻触核取标记图标确认关闭电源。

  • 本章讨论的是如何进入和退出CGDB。有如下几种方法: 在命令行下输入 'cgdb' 运行CGDB 在GDB窗口输入 'quit' 或者按下 'Ctrl+D' 退出CGDB 在源代码窗口输入 ':quit' 也可以退出CGDB。这在GDB挂起或者运行一条耗时很长的指令时也同样起作用