发布网友
共3个回答
懂视网
拿到一个项目,我们应该如何去完成这个项目呢。 是直接上手? 还是先进行分析,然后再去解决呢?毫无疑问,如果直接上手解决,那么可能会因为知道目标所在,而导致出现各种问题。 所以,我们应该系统的分析这个项目,然后再去完成。
第一步: 需求
除了上面的基本需求之外,我们还需要实现登录、注册的相关功能,这样可以保证用户的唯一性,并在后台做出记录。
第二步:确定技术栈
第三步: 技术学习
确定了以上技术栈之后,我们就需要学习没有用过的技术了。 有人提倡的是边做项目边学习,这种方法是没有错的。 但是我认为提前学习是一种比较好的做法,即首先需要对相应技术的基本概念、api等做一个初步的了解,在这个基础上做项目,我们就可以知道应该在遇到问题时使用那些方法来解决,这时再进入边做项目边学习的阶段是比较理想的了。
比如上面的技术socket.io、redux、react-router、ant.design都是我之前没有用过的,就需要做一个简单的学习,大概记录一下博客加深印象即可。
第四步: 项目架构
实际上对于一个项目,最重要的是项目的架构实现,当我们组织好了项目的架构并对webpack打包的部署完成之后,再去写项目的逻辑就会简单的多了,因为我们已经有了整体的思路。 如果项目的整体架构考虑不周,那么就有可能造成代码的可读性、可扩展性、可维护性很差,使得项目质量不高。
以上大概就是本项目的架构了,至于.gitignore、REDEME.md等是一个项目所必须的且不重要,不再赘述 。
第五步: 开始写代码
就是从头开始一步一步完成这个项目,无需多说。
第六步: 遇到的难点以及解决思路、方案
做项目中难免会遇到一些问题,并且有时候还比较难解决,这时就需要我们及时的记录。 一来是可以记录问题、随时着手解决;二来是可以通过记录在以后遇到问题时可以及时的查看记录,不再踩相同的坑或者再去从头寻找、思考解决思路。
使用express、react、webpack打包、socket.io、mongodb、ant.design、less、es6实现聊天室
标签:php sock 有用 优势 html org 变量 dex 使用
热心网友
随着前端技术的发展,越来越多新名词出现在我们眼前。angularjs、react、gulp、webpack、es6、babel……新技术出现,让我们了解了解用起来吧!今天我来介绍一下如何用webpack打包一个网页应用。
一般我们写页面,大概都是这样的结构:
index.html
css
style.css
js
index.js
...........
这样我们的html里直接引用css和js,完成一个网页应用。用webpack也类似,只是webpack把图片、css和js都编译打包成一个文件,我们只需要引用一个文件就可以了。
1.我们需要先安装node环境。没安装的请自行安装
2.在项目目录下输入npm init初始化一个node项目,输入项目名称等信息,完成后生成一个package.json文件。
3.在项目目录下安装webpack
npm install --save-dev webpack
4.我们需要一个webpack.config.js文件,记录webpack配置信息。它的配置大概这样:
var webpack = require('webpack');
var path = require('path');
var buildPath = path.resolve(__dirname, 'build');
var config = {
//入口文件
entry: {
index : './src/js/index.js'
},
extensions: ['', '.js', '.json', '.css', '.less'],
output: {
path: buildPath, //编译后的文件路径
filename: 'app.js'
},
mole: {
//Loaders
loaders: [
//.css 文件使用 style-loader 和 css-loader 来处理
{ test: /\.css$/, loader: 'style-loader!css-loader' },
{ test: /\.less$/,
loader: 'style-loader!css-loader!less-loader'
},
//.js 文件使用 babel 来编译处理
{ test: /\.js$/, loader: 'babel' },
//图片文件使用 url-loader 来处理,小于8kb的直接转为base
{ test: /\.(png|jpg)$/, loader: 'url-loader?limit=8192'}
]
},
};
mole.exports = config;
我们需要指定编译的入口文件和输出的目录路径,以及css和js用什么loader处理,比如我使用了less,要编译less文件,就指定less-loader,js我要用es6来写,为了兼容性,用babel来转成es5的代码。如果要使用react,也可以指定jsx等的编译方式。
5.这些loader都是需要npm安装的
npm install --save-dev css-loader less less-loader style-loader url-loader babel babel-core babel-loader babel-preset-es2015
6.如果需要用babel,在项目目录下新建一个名为.babelrc的隐藏文件,里面这样写:
{"presets":["es2015"]}
保存。
7.根据配置可以看到我们需要一个src文件夹和一个build文件夹,src放图片、css和js的源代码,build作为输出文件夹放编译后的文件。
8.src/js/index.js文件作为我们的入口文件,我们在里面可以愉快地写es6的代码,比如:
'use strict';
require('../css/base.css');
require('../css/animate.css');
require('../css/style.less');
require('../js/zepto.min.js');
let a = 'world';
let hello = `hello ${a}`;
console.log(hello);
可以看到css我们都通过require的方式引进来,这样webpack会把css和js打包进一个文件。
9.我们还差个index.html,放在项目文件夹下就可以,正常写,引入build/app.js就可以啦!
10.让我们试试吧
热心网友
1. 打包多个页面的js文件 读取src/views下的目录,约定每一个目录当成一个页面,打包成一个js chunk。 2. 打包多个html 循环生成多个HtmlWebpackPlugin插件,把每一个插件的chunks各自指向上面打包的js chunk。