自定义一个简单的loader

loader

webpack enables use of loaders to preprocess files. This allows you to bundle any static resource way beyond JavaScript

  • loader是webpack中的打包方案,能够打包项目中除js之外的一些静态资源。是webpack的核心之一。
  • 在webpack学习过程中,试着自定义一个简单的loader,加深一下理解。

自定义loader,目的是在打包中替换源代码中一个指定的字符串。

整个项目结构


image.png
  1. 创建一个文件夹loader_test,通过命令行 npm init -y 初始化。这样目录中就生成一个package.json文件。


    image.png
  2. npm install webpack webpack-cli --save-dev 安装webpack和脚手架

    image.png

  3. 在loader_test中创建src目录及目录下的index.js,根目录下创建配置文件webpack.config.js。

const path = require('path')
module.exports = {
    entry: {
        main: './src/index.js'
    },
    output: {
        path: path.resolve(__dirname, 'dist'),
        filename: '[name].js'
    }
}

在package.json文件中添加一个build执行命令

"scripts": {
    "build":"webpack"
  },
  1. 打包
npm run build 
image.png
  1. 创建一个replaceLoader.js文件 去处理源代码中的一个字符串替换逻辑(loader的作用在于打包代码做一些处理)


    image.png

    接下来配置文件去使用该loader

image.png

打包之后 查看结果,打包之前 console.log('hello lic')之后字符串替换成功


image.png
  1. 总结:
    a.我们来自定义loader用于做代码包装
    b.想在整个业务代码中做异常检测,可以写一个loader拿到js业务代码,然后对代码处理,做try catch
    c.网站做国际化。 在中文环境,就是中文显示,反之做其他显示
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 可以结合慕课网的视频来读这篇文章,地址:http://www.imooc.com/learn/802 Webpac...
    哈哈腾飞阅读 5,995评论 0 7
  • 目录第1章 webpack简介 11.1 webpack是什么? 11.2 官网地址 21.3 为什么使用 web...
    lemonzoey阅读 5,684评论 0 1
  • 记得2004年的时候,互联网开发就是做网页,那时也没有前端和后端的区分,有时一个网站就是一些纯静态的html,通过...
    阳阳阳一堆阳阅读 8,588评论 0 5
  • 前端将大型项目分成一个个单独的模块,一般封装好的每个模块都会实现一个目的明确的完成的功能。如何处理这些模块以及模块...
    pixels阅读 8,703评论 1 14
  • 曾经我给过她们每个人一个总结的概括性词语 让她们猜是谁 每个人都精确的猜到了 那说明了我的概括高度准确 哈哈 首先...
    李易峰娇妻阅读 1,612评论 0 0