React开发中的一些疑虑的答案

栏目: IOS · Android · 发布时间: 7年前

内容简介:然后重命名src下的任何文件为index.tsx,重启你的server就ok了。确实还是比较不错的。会自动生成tsconfig.json,当然,你是可以修改的。除此之外

老的版本应该是不支持, 我记得是支持Flow.

新的版本

Adding TypeScript
$ npm install --save typescript @types/node @types/react @types/react-dom @types/jest
$ # or
$ yarn add typescript @types/node @types/react @types/react-dom @types/jest

然后重命名src下的任何文件为index.tsx,重启你的server就ok了。确实还是比较不错的。

会自动生成tsconfig.json,当然,你是可以修改的。

除此之外 create-react-app-typescript 也是你的选择。

create-react-app 中使用 typescript 之debug

正常情况下,你生成的脚本是包含sourcemap文件的,如果你的文件都是js后缀结尾的,还是比较容易debug的,我也是这样debug的。你说惨不惨。

debug很大程度依赖你的IDE, create-react-app推荐的VSC.

简单总结

  1. 安装VSC插件Debugger for Chrome
  2. 配置debug配置

自定义service worker

最开始是想通过 react-app-rewire-workbox 来实现,结果尝试的时候失败了。

记一次基于react、cra2、typescript的pwa项目由开发到部署 这篇文章里面提到了,核心代码如下

module.exports = {
  webpack: function (config, env) {
     // typescript的配置插件
    config = rewireTypescript(config, env);
    if (env === 'production') {
      // 在 ‘production’ 模式下加入自己的配置
      const workboxConfigProd = {
        swSrc: path.join(__dirname, 'public', 'cus-service-worker.js'),
        swDest: 'cus-service-worker.js',
        importWorkboxFrom: 'disabled'
      }
      // 删除默认的WorkboxWebpackPlugin配置
      config = removePreWorkboxWebpackPluginConfig(config)
     // 加入我们的配置
      config.plugins.push(new workboxPlugin.InjectManifest(workboxConfigProd))
    }
    return config
  }
}
// 此函数用来找出 默认配置中的 WorkboxWebpackPlugin, 并把它删除
function removePreWorkboxWebpackPluginConfig (config) {
  const preWorkboxPluginIndex = config.plugins.findIndex((element) => {
    return Object.getPrototypeOf(element).constructor.name === 'GenerateSW'
  })
  if (preWorkboxPluginIndex !== -1) {
    config.plugins.splice(preWorkboxPluginIndex, 1)
  }
  return config
}

原理就是

  1. 删除原来的默认插件
  2. 添加自定义的插件

亲自尝试可以。 额外提一下, 其实内置的配置在

\node_modules\react-scripts\config是可以查看到的。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

第一本Docker书 修订版

第一本Docker书 修订版

詹姆斯·特恩布尔 (James Turnbull) / 李兆海、刘斌、巨震 / 人民邮电出版社 / 2016-4-1 / CNY 59.00

Docker是一个开源的应用容器引擎,开发者可以利用Docker打包自己的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。 本书由Docker公司前服务与支持副总裁James Turnbull编写,是Docker开发指南。本书专注于Docker 1.9及以上版本,指导读者完成Docker的安装、部署、管理和扩展,带领读者经历从测试到生产的整个开发生......一起来看看 《第一本Docker书 修订版》 这本书的介绍吧!

URL 编码/解码
URL 编码/解码

URL 编码/解码

SHA 加密
SHA 加密

SHA 加密工具

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具