webpack的使用和配置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了webpack的使用和配置相关的知识,希望对你有一定的参考价值。

webpack优势

代码分离

装载器(css.sass,jsx)

智能分析(require("./template/"+names+"e.js"))

1.安装webpack

npm install -g webpack

在项目中

输入npm init,完成后yes,会产生一个package.json用于下载配置

2.webpack的基本使用

app.js中内容转到bundle.js

在终端输入

webpack app.js bundle.js

在终端输入则页面会不断跟进

webpack app.js bundle.js --watch

获取另一个js中的数据

被获取js:a.js

module.exports="Hello EveryBody";

获取jsjs

alert(require(‘./a.js‘);注意访问本地文件必须要用./,对于npm中的文件则不需要

3.引入jquery等第三方文件jquerywebpack中的引用

1>.安装jquery

在项目中输入

npm install jquery --save

2>.引入jquery

let $=require("jquery");

4.静态文件模块化

1>.安装css-loaderstyle-loader

npm install css-loader style-loader--save-dev

2>.样式模块化

require("!style-loader!css-loader!./style.css")

5.上述的静态文件模块化,在实际应用中写法过于复杂

规范的文件模块化

将文件规范的放入srcjscss

webpack.config.js

module.exports = {

  //入口文件

  entry: ‘./src/js/app.js‘,

  //出口文件

  output: {

  //选择路径,__dirname当前路径

  path: __dirname + "/dist",

  filename: "bundle.js"

  },

  //需要依赖的插件或者装载器

  module:{

  loaders:[

  {

  test: /\.css$/,

  loader: "style-loader!css-loader"

  }

  ]

  }

}

6.webpack服务器设置

安装webpack依赖

npm install -g webpack-dev-server --save-dev

package.json中的scripts中输入

"start":"webpack-dev-server --entry ./src/js/app.js --output-filename ./dist/bundle.js",

在终端输入

npm start

浏览器输入localhost:8080即可,会自动更新

7.安装babel并配置依赖

npm install babel-core babel-loader babel-preset-es2015 --save-dev

webpack.config.js中添加

module:{}loaders中添加以下

{

  test:/\.js$/,

  loader: "babel-loader",

  //排除

  exclude:/node_modules/,

  //查询

  query:{

  presets:["es2015"]

  }

  }

webpackage.config.js

module.exports = {
//入口文件
entry: ‘./src/js/app.js‘,
//出口文件
output: {
//选择路径,__dirname当前路径
path: __dirname + "/dist",
filename: "bundle.js"
},
//需要依赖的插件或者装载器
module:{
loaders:[
{
test: /\.css$/,
loader: "style-loader!css-loader"
},
{
test:/\.js$/,
loader: "babel-loader",
//排除
exclude:/node_modules/,
//查询
query:{
presets:["es2015"]
}
}
]
}
}

package.json

{
  "name": "webpackdemo",
  "version": "1.0.0",
  "description": "应用于webpack",
  "main": "index.js",
  "scripts": {
    "start": "webpack-dev-server --entry ./src/js/app.js --output-filename ./dist/bundle.js",
    "build": "webpack",
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "Henry",
  "license": "ISC",
  "dependencies": {
    "jquery": "^3.2.1"
  },
  "devDependencies": {
    "babel-core": "^6.26.0",
    "babel-loader": "^7.1.2",
    "babel-preset-es2015": "^6.24.1",
    "css-loader": "^0.28.7",
    "style-loader": "^0.19.0"
  }
}

app.js

let people=require(‘./people.js‘);
let $=require("jquery");
require("../css/style.css");
$.each(people,function(index,item){
$(‘body‘).append(`<h1>${people[index].name}</h1>`);
})

people.js

let people=[
{name:"henry"},
{name:"Bucky"},
{name:"Emily"}
];
module.exports=people;

index.html

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Webpack</title>
</head>
<body>
</body>
<script src="dist/bundle.js"></script>
</html>

style.css

body{
background:skyblue;
}











本文出自 “Rcid” 博客,请务必保留此出处http://13419255.blog.51cto.com/13409255/1975347

以上是关于webpack的使用和配置的主要内容,如果未能解决你的问题,请参考以下文章

webpack

webpack的使用和配置

#VSCode保存插件配置并使用 gist 管理代码片段

在 React 项目中使用 System.import 进行 Tree Shaking 和延迟加载的 Webpack 2 配置

一个十分简单的关于生产环境和开发环境的webpack配置

webpack learn1-webpack-dev-server的配置和使用3