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

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

内容简介:然后重命名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是可以查看到的。


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

查看所有标签

猜你喜欢:

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

Introduction to Algorithms, 3rd Edition

Introduction to Algorithms, 3rd Edition

Thomas H. Cormen、Charles E. Leiserson、Ronald L. Rivest、Clifford Stein / The MIT Press / 2009-7-31 / USD 94.00

Some books on algorithms are rigorous but incomplete; others cover masses of material but lack rigor. Introduction to Algorithms uniquely combines rigor and comprehensiveness. The book covers a broad ......一起来看看 《Introduction to Algorithms, 3rd Edition》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

MD5 加密
MD5 加密

MD5 加密工具

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具