Webpack+Jquery+Css Hello World示例

1.准备工作

创建目录

首先建立相关目录,目录结构如下:

├── dist
│   └── js    # 存放build后的js文件
└── src
    ├── css  # 存放源css文件
    └── js    # 存放源js文件

仔细看上面的目录结构会发现,dist下面没有css目录,因为webpack默认是把源css文件和源js文件合并成一个js文件。如果要单独构建css,需要借助插件extract-text-webpack-plugin,本文就不详细说明。

生成package.json

执行命令npm init,一路回车之后生成package.json,内容如下:

{
  "name": "test",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC"
}

构建css需要借助css-loader和style-loader, 执行命令:

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

执行完之后,package.json为

{
  "name": "test",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "css-loader": "^0.28.11",
    "style-loader": "^0.21.0"
  }
}

建立webpack.config.js

如下:

module.exports = {
    entry: __dirname + '/src/js/index.js',
    output: {
        path: __dirname + '/dist/js',
        filename: 'bundle.js'
    },
    module: {
        rules:[
            {
                test: /\.css$/,
                use: [ 'style-loader', 'css-loader' ]
            },
        ]
    }
};

至此,准备工作完成,此时项目目录如下:

├── dist
│   └── js
├── src
│   ├── css
│   └── js
├── node_modules  #这是一个目录,存放依赖包
├── package.json
└── webpack.config.js

2. 代码实现

准备工作完成之后,写代码就很简单了。
在项目根目录建立index.html


<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>hello world</title>
    <script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
    <script type="text/javascript" src="bundle.js"></script>
</head>
<body>
<p>Hello World</p>
<button id="hide" type="button">隐藏</button>
<button id="show" type="button">显示</button>
</body>
</html>

建立./src/css/app.css文件,如下:

p {
    font-style:italic;
    color: green;
}

建立./src/js/index.js文件,如下:

require('../css/app.css');

$(document).ready(function(){
    $("#hide").click(function(){
        $("p").hide();
    });
    $("#show").click(function(){
        $("p").show();
    });
});

这时,代码工作完成。

3.执行

编辑package.json文件,在scripts项加入"dev": "webpack-dev-server --open ", "build": "webpack -p", 此时package.json文件如下:

{
  "name": "hello",
  "version": "1.0.0",
  "description": "",
  "main": "main.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "dev": "webpack-dev-server --open ",
    "build": "webpack -p"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "css-loader": "^0.28.11",
    "style-loader": "^0.21.0"
    "jquery": "^3.3.1",
  }
}

在项目根目录执行npm run dev, 就可以在浏览器http://localhost:8080/看到效果:

1526135234375.jpg

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容