zoukankan      html  css  js  c++  java
  • webpack----js的静态模块打包器

    webpack----js的静态模块打包器

    博客说明

    文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢!

    简介

    webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler)。当 webpack 处理应用程序时,它会递归地构建一个依赖关系图(dependency graph),其中包含应用程序需要的每个模块,然后将所有这些模块打包成一个或多个 bundle,默认webpack只能理解javascript文件。

    官方文档

    https://www.webpackjs.com/

    安装

    cnpm i webpack -g //--save(加载到项目依赖)
    

    使用

    设置入口

    使用webpack需要一个入口文件,也就是入口起点,进入入口起点后,webpack 会找出有哪些模块和库是入口起点(直接和间接)依赖的

    创建配置文件

    需要创建配置文webpack.config.js

    module.exports = {
      entry: './src/lib/index.js'
    };
    

    设置出口

    output 属性告诉 webpack 在哪里输出它所创建的 bundles,以及如何命名这些文件,默认值为 ./dist

    module.exports = {
      entry: './src/lib/index.js'
      output: {
        path: path.resolve(__dirname, 'dist'),
        filename: 'webpack-name.bundle.js'
      }
    };
    

    处理非js文件

    webpack使用的是loader,loader 可以让 webpack 能够去处理那些非 JavaScript 文件。loader 可以将所有类型的文件转换为 webpack 能够处理的有效模块

    module.exports = {
      entry: './src/lib/index.js'
      output: {
        path: path.resolve(__dirname, 'dist'),
        filename: 'webpack-name.bundle.js'
      },
      module: {
        rules: [
          { test: /.txt$/, use: 'raw-loader' }
        ]
      }
    };
    

    插件

    插件则可以用于执行范围更广的任务

    const HtmlWebpackPlugin = require('html-webpack-plugin'); // 通过 npm 安装
    module.exports = {
      entry: './src/lib/index.js'
      output: {
        path: path.resolve(__dirname, 'dist'),
        filename: 'webpack-name.bundle.js'
      },
      module: {
        rules: [
          { test: /.txt$/, use: 'raw-loader' }
        ]
      },
      plugins: [
        new HtmlWebpackPlugin({template: './src/index.html'})
      ]  
    };
    
    

    感谢

    webpack

    以及勤劳的自己

  • 相关阅读:
    赫尔维茨公式
    从解析几何的角度分析二次型
    Struts 1 Struts 2
    记一次服务器被入侵的调查取证
    契约式设计 契约式编程 Design by contract
    lsblk df
    Linux Find Out Last System Reboot Time and Date Command 登录安全 开关机 记录 帐号审计 历史记录命令条数
    Infrastructure for container projects.
    更新文档 版本控制 多版本并发控制
    Building Microservices: Using an API Gateway
  • 原文地址:https://www.cnblogs.com/guizimo/p/12505105.html
Copyright © 2011-2022 走看看