webpack ---- 配置完成后的package.json与webpack.config.js & 使用@代替./ …/

简介: webpack ---- 配置完成后的package.json与webpack.config.js & 使用@代替./ …/

7 配置完成后的package.json与webpack.config.js

"scripts": {
    "dev": "webpack serve",
    "build": "webpack --mode production"
  },
// 使用Node.js中的导出语法,向外导出一个webpack的配置对象
module.exports = {
    // devtool: 'eval-source-map',
    devtool: 'nosources-source-map',
    // 代表webpack运行的模式,可选值有两个development和production
    mode: 'development',
    entry: path.join(__dirname, './src/index.js'),
    output: {
        path: path.join(__dirname, 'dist'),
        filename: 'js/main.js'
    },
    // 插件的数组 将来webpack在运行时会加载并调用这些插件
    plugins: [htmlPlugin,new CleanWebpackPlugin()],
    devServer: {
        // 首次打包成功后自动打开浏览器
        open:true,
        // 在http协议中如果端口号为80可以省略
        port:80,
        // 指定主机运行的地址
        host:'127.0.0.1' 
    },
    module: {
        rules:[
            {test:/\.css$/, use:['style-loader', 'css-loader']},
            {test:/\.less$/, use:['style-loader', 'css-loader', 'less-loader']},
            // 处理图片文件的loader
            // 如果需要调用的loader只有一个,则只传递一个字符串就行,如果有多个loader则必须指定数组
            { test:/\.jpg|png|gif$/, use: 'url-loader?limit=22229&outputPath=images' },
            // 使用babel-loader处理高级的js语法
            // 注意:必须使用exclude排除指定项;因为node_modules目录下的第三方包不需要被打包
            {test:/\.js$/, use: 'babel-loader', exclude: /node_modules/}
        ]
    }
}

8 使用@代替./ …/

@代表src源代码目录

使用@从src开始向内查找

使用./ …/ 从当前文件向外查找

8.1 配置

webpack.config.js文件

const path = require('path')
//导入html-webpack-plugin插件 得到插件的构造函数
const HtmlPlugin = require('html-webpack-plugin')
// new构造函数创建插件的实例对象
const htmlPlugin = new HtmlPlugin({
    // 指定要复制哪个页面
    template: './src/index.html',
    // 指定复制出来的文件名和存放路径
    filename: './index.html'
})
const { CleanWebpackPlugin } = require('clean-webpack-plugin');
// 使用Node.js中的导出语法,向外导出一个webpack的配置对象
module.exports = {
    // devtool: 'eval-source-map',
    devtool: 'nosources-source-map',
    // 代表webpack运行的模式,可选值有两个development和production
    mode: 'development',
    entry: path.join(__dirname, './src/index.js'),
    output: {
        path: path.join(__dirname, 'dist'),
        filename: 'js/main.js'
    },
    // 插件的数组 将来webpack在运行时会加载并调用这些插件
    plugins: [htmlPlugin,new CleanWebpackPlugin()],
    devServer: {
        // 首次打包成功后自动打开浏览器
        open:true,
        // 在http协议中如果端口号为80可以省略
        port:8080,
        // 指定主机运行的地址
        host:'127.0.0.1' 
    },
    module: {
        rules:[
            {test:/\.css$/, use:['style-loader', 'css-loader']},
            {test:/\.less$/, use:['style-loader', 'css-loader', 'less-loader']},
            // 处理图片文件的loader
            // 如果需要调用的loader只有一个,则只传递一个字符串就行,如果有多个loader则必须指定数组
            { test:/\.jpg|png|gif$/, use: 'url-loader?limit=22229&outputPath=images' },
            // 使用babel-loader处理高级的js语法
            // 注意:必须使用exclude排除指定项;因为node_modules目录下的第三方包不需要被打包
            {test:/\.js$/, use: 'babel-loader', exclude: /node_modules/}
        ]
    },
    resolve: {
        alias: {
            //告诉webpack @代表src这一层目录
            '@' : path.join(__dirname, './src/')
        }
    }
}
相关文章
|
7天前
|
Web App开发 JSON JavaScript
JavaScript对象常用操作JSON总结
JavaScript对象常用操作JSON总结
18 8
|
12天前
|
缓存 JavaScript
webpack配置中的3种hash值
webpack配置中的3种hash值
|
15天前
|
JSON JavaScript 前端开发
js将json字符串还原为json
【6月更文挑战第15天】js将json字符串还原为json
20 4
|
22天前
|
存储 消息中间件 Java
Java一分钟之-Spring Cloud Config:外部化配置
【6月更文挑战第8天】Spring Cloud Config提供外部化配置,通过Config Server管理和版本控制微服务配置。本文涵盖Config Server与Client的配置、常见错误、多环境配置、实时更新及使用示例。注意配置服务器URL、环境变量设置、Bus配置以及安全问题。使用Config能提升系统灵活性和可维护性,但要留意日志以确保配置正确和安全。
94 10
|
18天前
|
缓存 前端开发 JavaScript
Webpack作为模块打包器,为前端项目提供了高度灵活和可配置的构建流程
【6月更文挑战第12天】本文探讨了优化TypeScript与Webpack构建性能的策略。理解Webpack的解析、构建和生成阶段是关键。优化包括:调整tsconfig.json(如关闭不必要的类型检查)和webpack.config.js选项,启用Webpack缓存,实现增量构建,代码拆分和懒加载。这些方法能提升构建速度,提高开发效率。
32 3
|
19天前
|
存储 JSON JavaScript
JavaScript基础-对象与JSON
【6月更文挑战第11天】本文介绍了JavaScript对象的创建(字面量、构造函数、Class)与操作,包括属性访问和描述符。同时讲解了JSON的性质及其与JS对象的关系,以及序列化和解析过程。文章还列举了三个常见易错点(属性访问错误、JSON格式错误、循环引用)并提供了避免策略。通过代码示例展示如何操作对象和处理JSON,强调实践对于掌握这些概念的重要性。
|
4天前
|
机器学习/深度学习 JSON 移动开发
详细解读BootStrap智能表单系列八表单配置json详解
详细解读BootStrap智能表单系列八表单配置json详解
|
5天前
springCloud之配置中心Config
springCloud之配置中心Config
5 0
|
5天前
|
JavaScript
TypeScript编译(tsconfig.json配置)
TypeScript编译(tsconfig.json配置)
5 0
|
9天前
|
XML JSON 前端开发
第十一篇JavaScript JSON与AJAX
第十一篇JavaScript JSON与AJAX
8 0