1.1 项目技术

a. 使用react全家桶 + es6 + webpack + antd-mobile

b. 采用模块化、组件化、工程化

c. Node + express + mongodb + socketIO

1.2 开始项目

项目源码设计

1.2.1 移动端在处理点击事件的时候,会有300毫秒的延迟。恰恰是这300毫秒的延迟,会让人有一种卡顿的体验。所以在index.html中引入插件fastclick
<script>if ('addEventListener' in document) {document.addEventListener('DOMContentLoaded', function() {FastClick.attach(document.body);}, false);}if(!window.Promise) {document.writeln('<script src="https://as.alipayobjects.com/g/component/es6-promise/3.2.2/es6-promise.min.js"'+'>'+'<'+'/'+'script>');}
复制代码

2 组件打包

2.1 安装依赖

npm install --save-dev babel-plugin-import react-app-rewired
复制代码

2.2 在更目录下建立 config-overrides.js

const {injectBabelPlugin} = require('react-app-rewired');module.exports = function override(config, env) {config = injectBabelPlugin(['import', {libraryName: 'antd-mobile', style: 'css'}],config);return config;}
复制代码

修改配置: package.json

"scripts": {"start": "react-app-rewired start","build": "react-app-rewired build","test": "react-app-rewired test --env=jsdom","eject": "react-scripts eject"}
复制代码

在index.js中写入

import React from 'react'import ReactDOM from 'react-dom'import {Button} from 'antd-mobile'ReactDOM.render(<Buttontype='primary'>招聘</Button>,document.getElementById('root'))
复制代码

2.3 将主体的背景颜色从 blue 变为 green

添加less-loader要加上版本@2.7.3,否则会加载最新版本, 电脑无法运行

npm install --save-dev less@2.7.3 less-loader
复制代码

配置: config-overrides.js

const {injectBabelPlugin, getLoader} = require('react-app-rewired');const fileLoaderMatcher = function (rule) {return rule.loader && rule.loader.indexOf(`file-loader`) != -1;
}module.exports = function override(config, env) {// babel-plugin-importconfig = injectBabelPlugin(['import', {libraryName: 'antd-mobile',//style: 'css',style: true, // use less for customized theme}], config);// customize themeconfig.module.rules[1].oneOf.unshift({test: /\.less$/,use: [require.resolve('style-loader'),require.resolve('css-loader'),{loader: require.resolve('postcss-loader'),options: {// Necessary for external CSS imports to work// https://github.com/facebookincubator/create-react-app/issues/2677ident: 'postcss',plugins: () => [require('postcss-flexbugs-fixes'),autoprefixer({browsers: ['>1%','last 4 versions','Firefox ESR','not ie < 9', // React doesn't support IE8 anyway],flexbox: 'no-2009',}),],},},{loader: require.resolve('less-loader'),options: {// theme vars, also can use theme.js instead of this.modifyVars: {"@brand-primary": "#1cae82", // 正常"@brand-primary-tap": "#1DA57A", // 按下},},},]});// css-modulesconfig.module.rules[1].oneOf.unshift({test: /\.css$/,exclude: /node_modules|antd-mobile\.css/,use: [require.resolve('style-loader'),{loader: require.resolve('css-loader'),options: {modules: true,importLoaders: 1,localIdentName: '[local]___[hash:base64:5]'},},{loader: require.resolve('postcss-loader'),options: {// Necessary for external CSS imports to work// https://github.com/facebookincubator/create-react-app/issues/2677ident: 'postcss',plugins: () => [require('postcss-flexbugs-fixes'),autoprefixer({browsers: ['>1%','last 4 versions','Firefox ESR','not ie < 9', // React doesn't support IE8 anyway],flexbox: 'no-2009',}),],},},]});// file-loader excludelet l = getLoader(config.module.rules, fileLoaderMatcher);l.exclude.push(/\.less$/);return config;
};复制代码

结语 后续更新中...

完整项目地址:github.com/hongzhengzh…

react全家桶实现招聘app-项目准备(一)相关推荐

  1. 酷狗音乐- Vue / React 全家桶的两种实现

    引言 两个月前用 Vue 全家桶实现过一次 酷狗音乐,最近又用 React 全家桶重构了下,最终成果和 Vue的实现基本一致,放个图: 手机预览戳 Vue 版本, React 版本. demo 选择 ...

  2. react全家桶从0搭建一个完整的react项目(react-router4、redux、redux-saga)

    react全家桶从0到1(最新) 本文从零开始,逐步讲解如何用react全家桶搭建一个完整的react项目.文中针对react.webpack.babel.react-route.redux.redu ...

  3. React全家桶项目

    开篇 利用业余时间,做了个React项目,算是成品吧,比较简单,还有很多瑕疵.目录结构相当简单.没有数据库,你们运行不起来.想运行起来的话,把express调用数据库的部分全删掉,写死数据. ak47 ...

  4. 基于React全家桶开发「网易云音乐PC」项目实战(一)

    网易云音乐PC项目实战 项目简介 1.项目介绍 项目使用到的技术栈 CSS使用Flex进行布局 配置路径别名使用: carco 项目路由使用: react-router来管理 使用react-rout ...

  5. 如何实现一个React全家桶项目(附完整教程及代码)

    文章目录 如何实现一个React全家桶项目(附完整教程) 1.相关命令: 运行项目: `yarn start` 项目打包: `yarn build` 暴露配置项: `yarn eject` 2.项目目 ...

  6. 从零搭建React全家桶框架教程

    从零搭建React全家桶框架教程 源码地址:https://github.com/brickspert/react-family 欢迎star 提问反馈:blog 原文地址:https://githu ...

  7. react全家桶从0到1(react-router4、redux、redux-saga)

    本文从零开始,逐步讲解如何用react全家桶搭建一个完整的react项目.文中针对react.webpack.babel.react-route.redux.redux-saga的核心配置会加以讲解, ...

  8. 使用react全家桶制作博客后台管理系统

    前面的话 笔者在做一个完整的博客上线项目,包括前台.后台.后端接口和服务器配置.本文将详细介绍使用react全家桶制作的博客后台管理系统 概述 该项目是基于react全家桶(React.React-r ...

  9. 初学者的React全家桶完整实例

    概述 该项目还有些功能在开发过程中,如果您有什么需求,欢迎您与我联系.我希望能够通过这个项目对React初学者,或者Babel/webpack初学者都有一定的帮助.我在此再强调一下,在我写的这些文章末 ...

最新文章

  1. Powershell指令集_2
  2. <java并发编程实践>读书笔记二
  3. 腾讯云安装samba服务器无法连接问题
  4. 成功解决ModuleNotFoundError: No module named 'keras_retinanet.utils.compute_overlap'
  5. C语言高级编程:sizeof计算数组大小需要注意的问题
  6. 最新70佳单页网站设计案例欣赏(上篇)
  7. JAVA知识基础(七):封装
  8. 从云服务器上拷贝文件,从云服务器上拷贝文件
  9. XP系统桌面图标透明问题的解决办法
  10. 学习总结 java 创建及其练习
  11. 堆插入和删除的简单实现
  12. 2017软件构造3.3
  13. 使用ApiPost按顺序传参及测试多个接口
  14. 无线传感器网络中的MAC协议
  15. PHP微信h5棋牌搭建sprintf()函数的使用
  16. cad画流程图的插件_CAD高手教您画工艺流程图设计一些列图
  17. ZJUT 2012校赛决赛-涂颜色
  18. 简单使用python进行图像打标
  19. 施炜:华为为什么能成功?
  20. Dell 工作站故障诊断报警信息原因查询

热门文章

  1. ios退款 怎么定位到是哪个用户_哪个浏览器兼容性最好用?看看用户都是怎么评价的吧...
  2. wordpress主题webstack pro V2.0406 完美版
  3. vue怎么编辑已有视频_手机制作短视频、VLOG用啥App?~~
  4. html怎么控制进度条,HTML如何实现进度条?附源码
  5. HTML二刺螈网址导航模板
  6. 苹果CMS萝卜二开修复渐变绿影视原生App源码-投屏试看可用
  7. 夏日清凉小风扇网站源码 抖音引流神器
  8. WHMCS v8.0 bate1开心版源码
  9. 自动采集电脑壁纸PHP源码美化版
  10. 价值800的swapidc鸟云模板