首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

create-react-app初探

本文作者:IMWeb IMWeb团队 原文出处:IMWeb社区 未经同意,禁止转载 create-react-app是一个react的cli脚手架+构建器,我们可以基于CRA零配置直接上手开发一个...CRA还能干嘛 CRA除了能帮我们构建出一个React的SPA项目(generator),充当脚手架的作用。还能为我们在项目开发,编译时进行构建,充当builder的作用。.../config/env'); 还有一些预检查,这部分是作为eject之前对项目目录的检查,这里因为eject不在我们范围,直接跳过。...CRA做到了可以0配置,就能进行react项目的开发,调试,打包。...其实是因为CRA把复杂的webpack config配置封装起来了,把babel plugins预设好了,把开发时会常用到的一个环境检查,polyfill兼容都给开发者做了,所以使用起来会比我们直接使用

1.2K10

create-react-app初探

create-react-app是一个react的cli脚手架+构建器,我们可以基于CRA零配置直接上手开发一个react的SPA应用。...CRA还能干嘛 CRA除了能帮我们构建出一个React的SPA项目(generator),充当脚手架的作用。还能为我们在项目开发,编译时进行构建,充当builder的作用。.../config/env'); 还有一些预检查,这部分是作为eject之前对项目目录的检查,这里因为eject不在我们范围,直接跳过。...CRA做到了可以0配置,就能进行react项目的开发,调试,打包。...其实是因为CRA把复杂的webpack config配置封装起来了,把babel plugins预设好了,把开发时会常用到的一个环境检查,polyfill兼容都给开发者做了,所以使用起来会比我们直接使用

73320
您找到你想要的搜索结果了吗?
是的
没有找到

前端工程化之概念介绍

TypeScript 配置文件 postcss.config.js 5) CSS 后处理工具 postcss 配置文件 .eslintrc 6) 代码检查工具...构建工具的主流选择还是 webpack增加相关的 webpack 配置文件: 开发环境/生产环境 5) 构建流程 安装与配置各种 Loader 、插件和其他配置项 6) 选择和调试辅助工具 代码检查工具...React 否 是 React 官方维护 Vue CLI Vue 是 是 Vue官方维护 「CRA」: Facebook 官方提供的 React 开发工具集, 包含两个基础包 自定义配置能力 react-app-rewired...:利用config-overrides.js 文件来对 webpack 配置进行扩展 customize-cra:利用react-app-rewired的配置文件config-overrides.js对...完整的 Vue CLI 由三部分组成 作为全局命令的 @vue/cli 作为项目内集成工具的 @vue/cli-service 作为功能插件系统的 @vue/cli-plugin 当然,CRA/Vue

72610

【前端部署十一篇】通过 CICD 实践 Lint、Test、Performance 等前端质量保障工程

长按识别二维码查看原文 标题:cra-deploy image.png 由于 create-react-app 使用 ESLint Plugin 源码3 进行代码检查,而非命令行式命令。...长按识别二维码查看原文 标题:源码 image.png 当 ESLint 存在问题时,create-react-app 会「判断当前是否 CI 环境来决定报错还是警告」,而在 CI 中 npm run...它们的最大的区别在于一个是客户端检查,一个是服务端检查。而客户端检查是天生不可信任的。 而针对 git hooks 而言,很容易通过 git commit --no-verify 而跳过。...:https://github.com/shfshanyue/cra-deploy [3] 源码:https://github.com/facebook/create-react-app/blob/v5.0.0.../cra-deploy/blob/master/.github/workflows/ci.yaml [5] 本次 Action:https://github.com/shfshanyue/cra-deploy

1.1K20

JavaScript 测试系列实战(一):使用 Jest 和 Enzyme 测试 React 组件

初识 Jest 单元测试 测试是检查代码的代码,能够大大增强我们对应用的信心。更重要的是,测试会阻止你在修复一件事情的同时破坏另一件事情,让我们能够放开手脚进行功能的添加与大规模重构。...对于给定的输入,单元测试检查结果。通过及早发现问题并避免 bug 回归,它可以帮助我们确保代码的各个部分按预期工作。 集成测试 即使所有单元测试都通过了,我们的应用仍然可能会崩溃。...E2E 测试的重点是在我们正在运行的应用程序中模拟实际用户(例如模拟滚动、单击和键入等行为),并检查我们的应用程序是否从实际用户的角度运行良好。...首先用 Create React App(CRA)搭建项目脚手架: create-react-app javascript-test-series 然后我们删除 src 目录下所有预创建的文件(当然你也可以手动删除...让我们对全局 Math 对象运行一些测试(希望浏览器工程师和 Node 开源项目维护者不要来打我),创建 math.test.js ,代码如下: // math.test.js describe('in

2.9K10

我们如何使用 Next.js 将 React 加载时间缩短 70%

Causal 的前端是在 2019 年用 Create React App(CRA)构建的,它为我们提供了很好的服务——它只需要最小的初始设置,并允许快速迭代。...Next.js 是一个框架,带有构建工具和运行时库,用于创建丰富的 React 应用程序。...文件,该文件显式地为应用程序中的每个页面设置了一个路由组件: import Loadable from "react-loadable"; import { Route, Switch } from...Next.js 只需要在 pages/model/[:id]/edit.tsx 上放置一个带有默认导出的 React 组件的文件,就可以在这个路径上渲染一个页面,其中的 id 属性指示 URL 的 id...import "styles/button.scss"; export function Button(props) { return ; } 我们尽可能地将全局

4.7K10

Create React App v3 + Webpack v4 多页应用配置

://github.com/xunge0613/react-multipage-app 背景 移动端 H5 想做一个多页应用项目,react + webpack,参考了这两篇写的很不错的文章 React-CRA...安装、运行 create-react-app # 卸载旧版 create-react-app npm uninstall -g create-react-app # 使用 npx 安装最新版 npx...ps:本文之前参考的文章多数是基于 create-react-app v2 的,而实际自己使用的是 CRA v3 版本。 错误日志 另外一个影响解决速度的原因是:没有报错信息。...在 start.js & build.js 中调整 checkRequiredFiles 检查函数 此时如果直接运行 yarn start 会报错,全局搜一下 appIndexJs 会发现在 start.js...Done~ 感谢阅读到这里~ 也感谢分享相关资料的大佬们~ 参考资料 [1] React-CRA 多页面配置(npm run eject): https://segmentfault.com/a/1190000016960824

1.4K20

React教程:组件,Hooks和性能

首先使用 Create React App(CRA)初始化一个新项目,然后开始开发。不过遗憾的是,随着时间的推移,代码可能会变得难以维护,特别是在你不熟悉 React 的情况下。...React 似乎推广了一些不仅在 React 中变得普遍的解决方案,例如最近集成在 CRA 中的 CSS 模块,你可以在其中简单地导入 name.modules.css 并用其属性来调整组件的样式(某些...之所以使用它,是因为它允许 React 检查你是否做了不好的事情,例如从常规JS函数调用hook。 类型检查 在支持 Flow 和 TypeScript 之前,React有自己的属性检查机制。...在使用 CRA 的情况下,它就像使用 npm run build(将运行react-scripts build)一样简单。...代码拆分 代码拆分的方式比这里给出的建议多得多,但让我们关注 CRAReact 本身可用的内容。

2.6K30

vue-cli

这不后来就有了parcel宣称零配置的轮子, 还有 React 社区的create-react-app, vue-cli 前期是基于模板的创建项目, 不算此列。...我们可以来对比一下这些工具: Vue CLI create-react-app parcel 快速原型开发 支持 - 支持 全局模式 零配置原型开发就是全局的 - 支持 插件 支持 - 支持,扩展文件类型和文件输出...一个典型的例子就是它不内置开启 babel 装饰器转译,CRA 团队认为已经废弃(或者不成熟)的语言特性不应该带到 CRA 中; 后面为了给‘优雅’地给 babel 扩展插件,就捣鼓出来了babel-macro...这种强约定也是有好处的,比如不需要管理配置; 而且 CRA 团队谨慎可靠地维护着 CRA,这使得开发者可以一般无痛地升级 CRA....这种模式有利于项目模块组织 image.png 分离 CLI 层和 Service 层 这个设计是借鉴create-react-app的, CLI 层只是一些基础的命令一般不需要频繁升级,而且是全局安装

3.1K10

Vite前端项目搭建从0到1

其次是安装 Node.js,如果你的系统中还没有安装 Node.js ,可以进入 Nodejs 官网下载相应的安装包进行手动安装;如果已经安装了 Node.js,你可以使用这个命令检查一下 Node.js...我曾经拿 react 官方基于 Webpack 的脚手架create-react-app,也就是大家常说的cra来测试过,Vite 已经比 cra 快了接近 6 倍,并且一开始就甩了 cra 一大截,显而易见地提升了初始化速度和开发体验...react 插件,来提供 React 项目编译和热更新的功能。...tsc 作为 TypeScript 的官方编译命令,可以用来编译 TypeScript 代码并进行类型检查,而这里的作用主要是用来做类型检查,我们可以从项目的tsconfig.json中注意到这样一个配置...:{ "compilerOptions": { // 省略其他配置 // 1. noEmit 表示只做类型检查,而不会输出产物文件 // 2.

50180

TypeScript 、React、 Redux和Ant-Design的最佳实践

哈哈哈~ 介绍完了配置,后面会有大量的总结~ React直接看文档,React官方中文文档,我认为React的中文文档已经写得非常好了,学起来还是比较简单的~ Redux,学习Redux之前,建议把官方文档看几遍...使用官方的 create-react-app的另外一种版本 和 Create React App 一起使用 TypeScript react-scripts-ts 自动配置了一个 create-react-app...你可以像这样使用:create-react-app my-app --scripts-version=react-scripts-ts, -前提你必须全局下载 create-react-app 请注意它是一个第三方项目...": "^1.11.0", "customize-cra": "^0.2.12", "less": "^3.9.0", "less-loader": "^...按需加载配置 `config-overrides.js` const { override, fixBabelImports, addLessLoader } = require('customize-cra

2.8K20

一个简洁、强大、可扩展的前端项目架构是什么样的?

Bulletproof React是什么 Bulletproof React与我们常见的脚手架(比如CRA)不同,后者的作用是「根据模版创建一个新项目」。...# 通用工具函数 其中,features目录与components目录的区别在于: components存放全局公用的组件,而features存放「业务相关特性」。...(比如将特性的hooks存放在全局hooks目录),以features目录作为「相关代码的集合」能够有效防止项目体积增大后代码组织混乱的情况。...应用状态 与应用交互相关的状态,比如「打开弹窗」、「通知」、「改变黑夜模式」等,应该遵循「将状态尽可能靠近使用他的组件」的原则,不要什么状态都定义为「全局状态」。...参考资料 [1] Bulletproof React: https://github.com/alan2207/bulletproof-react

1.1K30

前端工程化实战 - 企业级 CLI 开发

tsc --init // 初始化 tsconfig.json 全局安装完 TypeScript 之后,初始化 tsconfig.json 之后再进行修改配置,添加编译的文件夹与输出目录。...if (resultText) { console.log('请检查===》', resultText); } else { console.log('完美!')...// 全局安装 create-react-app create-react-app test-cli // 创建测试 react 项目 测试项目使用的是 create-react-app,当然你也可以选择其他框架或者已有项目都行...image.png 从上图暴露出来的配置项可以看出,CRA 的 webpack 配置还是非常复杂的,毕竟是通用型的脚手架,针对各种优化配置都做了兼容,但目前 CRA 使用的还是 webpack 4 来构建...image.png 下图是使用 CRA 构建出来的产物,跟上图的构建产物对一下,能明显看出使用简化版本的 webpack 5 配置还有很多可优化的地方,那么感兴趣的同学可以再自行优化一下,作为 demo

79540
领券