扬州Web前端工程师培训班
扬州Web前端工程师培训班
- 上课时段:详见详情
- 教学点:1个
- 开班时间:滚动开班
- 课程价格:请咨询
- 已关注:783
- 优惠价格:请咨询
- 咨询电话: 400-008-6280
web前端的就业方向,是很多人选择这个行业的一个判断标准,是不是能长期发展?如果长期发展对自己有什么好处?Web前端开发程序员处于供不应求的状态,对于0基础想要从事互联网行业的小伙伴们,Web前端将会是最合适的入门编程语言。而且根据后期的职业发展规划来看,只要入门Web前端,在职场上发展个三到五年,基本上都能做到总监级别。
优就业Web前端课程 人群覆盖广
大前端课程“四化一体 内容为王”
4大教学标准化 | 01标准化 制定项目研发标准、授课标准、考核标准,避免知识点冗余、重复和堆叠,避免授课质量严重依赖讲师个人能力,影响学员学习效果 02多元化 课程设计科学合理,多维度培养学员动手能力、实践能力、分析能力,不管是零基础还是转行提升,不同层次学员皆能有所收获 03梯度化 课程站在学员角度设计,平滑的学习曲线,细化知识点的颗粒度,精研课程内容设计、并且以“分钟”为单位对知识点进行精细化讲解,全面解 04实战化 渐进式学习,企业级项目全端实现,以一个项目为主(深度),将知识点讲深讲透。辅助多样化的项目,查漏补缺、开拓视野(广度),科学和合理地衔接每一块内容 |
八大课程体系 | |
23大知识模块 |
前端课程真正契合企业用人需求
第一阶段 前端页面重构 | 课程主题 HTML5基础、CSS3基础、切图、综合项目:小U课堂 HTML5进阶、 CSS3进阶、综合项目:小U商城 综合项目:响应式布局 实战项目PC端项目:小U课堂静态页面布局 移动端项目:小U商城移动端项目 响应式项目:小U商城后台管理系统 培养方向 1.熟练使用前端开发IDE:vscode编辑器 2.掌握HTML5基础和HTML5进阶中的常用标签 3.掌握CSS基本语法和文字字体属性 4.掌握盒模型属性在网页中的应用 5.掌握浮动语法和清除浮动影响的方法 6.掌握四种定位的语法和应用场景 7.掌握CSS精灵图实现的原理及优缺点 8.掌握CSS3中2D/3D变形函数、动画、框模型、文本阴影、背景属性 9.掌握弹性盒相关属性的语法和应用场景 10.掌握企业级PC端项目的开发流程和规范 11.掌握移动端REM多种布局方案的原理和实现的步骤 12.掌握响应式布局的核心技术 |
第二阶段 前端交互设计 | 课程主题 JavaScript基础语法、WEBAPI编程、JavaScript高级、面向对象编程、综合项目:小U课堂、jQuery基础、jQuery进阶、jQuery高级、Zepto 综合项目:小U商城、Bootstrap、综合项目:vscode官网 实战项目原生JavaScript项目:小U课堂、 jQuery项目:小U商城 Bootstrap项目:vscode 培养方向 1.掌握JavaScript基础语法、运算符、表达式、数据类型、流程控制语句的应用 2.掌握函数式编程在生产环境下的应用; 3.掌握JavaScript内置对象api的应用场景和使用方式; 4.掌握DOM针对于节点的增删改查操作; 5.掌握BOM的基本应用; 6.掌握事件类型,触发机制和事件传播原理; 7.掌握递归、闭包、回调函数特性及应用; 8.掌握面向对象编程在生产环境下的应用; 9.掌握jQuery、Zepto库的使用; 10.掌握Bootstrap在响应式网页开发中的应用 |
第三阶段 服务器端开发 | 课程主题 Git、ECMAScript6、Node.js开发、Express框架、Promise与异步、async函数、MySQL数据库 Ajax前后端交互、项目:《小U课堂》、WebSocket、Webpack 实战项目全栈项目:小U课堂PC端 培养方向 1.Git版本管理工具,熟练使用Git进行项目文件托管到远程仓库; 2.ECMAScript6新特性,不局限于(let、const、新的数据类型和数据结构、ES6模块化、promise、class语法)、ES7~ES10新特性; 3.掌握Node.js环境配置,熟练使用cmd运行可执行程序; 4.掌握文件的读写操作; 5.掌握Commonjs规范、包管理,通过模块化思想进行快速开发项目 6.Express框架、Express中间件原理、Express脚手架快速搭建项目; 7.掌握Cookie、Session、文件上传等原理; 8.深入理解Http协议,前后端交互流程及原理; 9.掌握Rest Client接口测试工具; 10.掌握Mysql数据库存储方式,通过SQL进行数据的操作; 11.掌握Webpack打包原理 |
第四阶段 前端框架 | 课程主题 Vue基础、Vue进阶、小U商城电商项目、React 小U优选项目、TypeScript、vue、React 实战项目后台管理项目:小U电商后台管理项目 Vue移动端项目:小U商城 React项目:小U优选 培养方向 1.掌握什么是Vue、优缺点和核心以及它的设计模式 2.掌握Vue基本指令的使用 3.掌握事件的绑定方法和流程 4.掌握事件修饰符、生命周期、过滤器、watch侦听器、计算属性以及动画的原理和使用 5.掌握组件的创建和注册以及组件通信的使用 6.掌握脚手架的创建以及使用 7.掌握基本路由、路由嵌套以及高阶路由用法 8.掌握vuex状态管理以及辅助性函数的使用 9.掌握数据交互之第三方库axios的使用以及高阶拦截器的实战 10.掌握ElementUI和Vant第三方UI框架的使用 11.掌握Vue相关知识的综合使用 12.熟悉Vue后台管理项目以及移动端项目的开发、部署流程 13.掌握React的概念、特点以及jsx的基本使用 14.掌握React组件的概念以及注册 15.掌握React的事件处理,state状态机以及props属性 16.掌握React基本路由、路由嵌套以及高阶路由用法 17.掌握AntedPC端和移动端第三方UI框架的使用 18.掌握数据交互之第三方库fetch的使用 19.掌握Hook的概念基本使用以及定义规则 20.熟悉React状态管理Redux的原理和流程以及实战应用 21.熟悉React项目优化、部署流程 |
第五阶段 小程序+数据可视化 | 课程主题 微信小程序、uni-app、综合项目:小U商城、 数据可视化、综合项目:农业数据实时监测系统 实战项目移动端应用:小U商城 数据可视化:农业数据实时监测系统 微信小程序:来菜吧 培养方向 1.掌握微信小程序账号注册流程、熟练使用微信开发者工具; 2.掌握微信小程序json配置,视图层和逻辑层的操作; 3.掌握微信小程序模块化及组件化的操作; 4.掌握微信小程序常用API及开放能力的使用; 5.掌握微信小程序云开发的使用; 6.掌握微信小程序原生语法结合Promsie进行业务开发的使用; 7.掌握微信小程序拓展能力,如组件库、computed、骨架屏的使用; 8.掌握微信小程序部署发布上线的能力; 9.掌握uni-app框架基础语法、熟练使用HBuilderX开发工具; 10.掌握环境判断、运行期判断、条件编译,实现跨平台兼容; 11.掌握uni-app其他三方UI库的使用; 12.掌握uni-app一套代码,开发项目发布到多个终端的能力; 13.掌握Canvas、svg绘图容器使用; 14.掌握d3.js、echarts.js绘图工具使用; 15.掌握echarts.js结合vue框架及socket即时通讯,实现数据可视化多图表开发,大屏项目开发的能 |
第六阶段 就业指导 | 课程主题 行业前景与职业规划、简历指导、开源项目讲解、 知识点回顾及面试题讲解、面试指导 培养方向 1.了解并制定职业规划; 2.掌握简历书写规范与技巧; 3.掌握面试环节流程及注意事项; 4.梳理知识点与面试题; 5.了解开源项目vue-element-admin和ant-design-pro; 6.了解开源电商项目mall |
Web前端就业路径广 薪资涨幅大
越来越多的企业开始关注用户体验对于产品的重要性,使得Web前端工程师专业人才严重紧缺,从招聘网站需求量可以看出,Web前端开发人员供不应求。 | 专业人才严重紧缺专业的Web前端工程师前景广阔,并且随着工作经验的不断积累,Web开发工程师薪资涨幅明显,未来发展趋势大好。 |
各大招聘网站Web岗位需求量 | 各城市Web平均薪资统计图 |
这次分享的内容也是我们web培训课程中讲到过的Webpack4+React16+ReactRouter4整合开发,希望可以对同学们有所帮助。
1、 创建项目并安装
mkdir webpack4_react16_reactrouter && cd webpack4_react16_reactrouter
pm init -y
pm install react react-dom prop-types react-router-domnpm install webpack webpack-cli html-webpack-plugin clean-webpack-plugin webpack-dev-server eslint eslint-plugin-html eslint-plugin-react babel-eslint eslint-config-airbnb eslint-plugin-jsx-a11y eslint-plugin-import babel-core babel-loader babel-plugin-transform-strict-mode babel-plugin-transform-object-assign babel-plugin-transform-decorators-legacy babel-preset-es2015 babel-preset-react babel-preset-stage-0 style-loader css-loader url-loader --save-dev
react开发需要用到的
babel相关的是用来做es5/es6语法解析的
eslint相关的是用来做语言检查的
2、eslint和webpack相关配置
.eslintrc
{ "env": { "browser": true, "node": true, "es6": true, "jquery": true }, "parser": "babel-eslint", "plugins": [ "react", "html" ], "extends": [ "airbnb" ], "rules": { "no-underscore-dangle": 0 }}
webpack.config.js
const path = require('path');const HtmlWebpackPlugin = require('html-webpack-plugin');const CleanWebpackPlugin = require('clean-webpack-plugin');let config = { entry: { app: ['./src/index.jsx'], }, plugins: [ new CleanWebpackPlugin(['dist']), new HtmlWebpackPlugin({ title: 'React + ReactRouter Demo', filename: './index.html', // 调用的文件 template: './index.html', // 模板文件 }), ], output: { filename: '[name].bundle.js', path: path.resolve(__dirname, 'dist'), }, module: { rules: [{ test: /.(js|jsx)$/, loader: 'babel-loader', exclude: [ path.resolve(__dirname, 'node_modules'), ], options: { plugins: ['transform-async-to-generator', 'transform-strict-mode', 'transform-object-assign', 'transform-decorators-legacy'], presets: ['es2015', 'react', 'stage-0'], }, }, { test: /.css$/, use: [ 'style-loader', 'css-loader', ], }, { test: /.(png|svg|jpg|gif)$/, use: [ 'file-loader', ], }, { test: /.(woff|woff2|eot|ttf|otf)$/, use: [ 'file-loader', ], }, { test: /.(csv|tsv)$/, use: [ 'csv-loader', ], }, { test: /.xml$/, use: [ 'xml-loader', ], }, ], }, resolve: { extensions: ['.js', '.jsx'], // 这里是必须要加的,不然默认的值加载['.js','.json']为后缀的文件 },};if (process.env.NODE_ENV === 'production') { config = Object.assign({}, config, { mode: 'production', });} else { config = Object.assign({}, config, { mode: 'development', devtool: 'eval', devServer: { contentBase: path.join(__dirname, 'dist'), compress: true, port: 8083, }, });}module.exports = config;
index.html
<!DOCTYPE html><html><head> <meta charset="utf-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>React + ReactRouter Demo</title> <meta name="viewport" content="width=device-width, initial-scale=1"></head><body> <div id="root"></div></body></html>
基本上整个目录结构就搭建完了。还是蛮繁琐的,但是自己了解了其中整个逻辑及流程,对自己是有意的,不过说不好未来就成体系了,直接调用就好了,比如现在的create-react-app,可以直接帮你创建一个项目,很不错的一个选择。
但是搭建一个符合自己需求的更有价值。
基本的都弄完了,接下来如何使用ReactRouter呢,先从入口文件开始
src/index.jsx
import React from 'react';import ReactDOM from 'react-dom';import { BrowserRouter as Router, Route, Link as ALink,} from 'react-router-dom';import AppComponent from './components/AppComponent';import HomeComponent from './components/HomeComponent';import AboutComponent from './components/AboutComponent';import TopicsComponent from './components/TopicsComponent';ReactDOM.render( ( <Router> <AppComponent> <ul> <li><ALink to="/">首页</ALink></li> <li><ALink to="/about">关于</ALink></li> <li><ALink to="/topics">论题</ALink></li> </ul> <hr /> <Route exact path="/" component={HomeComponent} /> <Route path="/about" component={AboutComponent} /> <Route path="/topics" component={TopicsComponent} /> </AppComponent> </Router> ), document.getElementById('root'),);
基本上整个实例是参考了官网的实例,只是针对自己的需求做局部的调整,对于需要使用React开发的同学完全可以入手了,关于数据相关的后面再继续讨论。
这里有个很重要的点,就是在使用webpack-dev-server的使用,当你跳转到某个路由的时候,再刷新会发现页面提示找不到,这个问题这里介绍一个解决方案
historyApiFallback
只需要在webpack.config.js中配置下
historyApiFallback: { rewrites: [{ from: /^/$/, to: './index.html', }, ],},
最终的文件结构如下
const path = require('path');const HtmlWebpackPlugin = require('html-webpack-plugin');const CleanWebpackPlugin = require('clean-webpack-plugin');let config = { entry: { app: ['./src/index.jsx'], }, plugins: [ new CleanWebpackPlugin(['dist']), new HtmlWebpackPlugin({ title: 'React + ReactRouter Demo', filename: './index.html', // 调用的文件 template: './index.html', // 模板文件 }), ], output: { filename: '[name].bundle.js', path: path.resolve(__dirname, 'dist'), }, module: { rules: [{ test: /.(js|jsx)$/, loader: 'babel-loader', exclude: [ path.resolve(__dirname, 'node_modules'), ], options: { plugins: ['transform-async-to-generator', 'transform-strict-mode', 'transform-object-assign', 'transform-decorators-legacy'], presets: ['es2015', 'react', 'stage-0'], }, }, { test: /.css$/, use: [ 'style-loader', 'css-loader', ], }, { test: /.(png|svg|jpg|gif)$/, use: [ 'file-loader', ], }, { test: /.(woff|woff2|eot|ttf|otf)$/, use: [ 'file-loader', ], }, { test: /.(csv|tsv)$/, use: [ 'csv-loader', ], }, { test: /.xml$/, use: [ 'xml-loader', ], }, ], }, resolve: { extensions: ['.js', '.jsx'], // 这里是必须要加的,不然默认的值加载['.js','.json']为后缀的文件 },};if (process.env.NODE_ENV === 'production') { config = Object.assign({}, config, { mode: 'production', });} else { config = Object.assign({}, config, { mode: 'development', devtool: 'eval', devServer: { contentBase: path.join(__dirname, 'dist'), compress: true, port: 8083, historyApiFallback: { rewrites: [{ from: /^/$/, to: './index.html', }, ], }, }, });}module.exports = config;
在运行npm start,修改代码试试,这里强调下版本,如果你的版本比我的新的话,要自己去看下官网的api是否有调整
实例环境,拉取github代码,看package.json,一切尽在你掌握之中
实例项目地址:
https://github.com/durban89/webpack4-react16-reactrouter-demo.git
tag: v_1.0.0
更多关于web而培训类知识请关注web.tedu.cn
扫描二维码免费领取试听课程
登录51乐学网
注册51乐学网