ES6 模块化、webpack、@ 代表src目录的设置

webpack

默认 约定:
在这里插入图片描述
自定义 打包的 入口与出口

const path = require('path') // 导入node.js中 专门操作路径的模块
module.exports = {
    entry: path.join(__dirname, './src/index.js'), // 打包 入口文件的路径
    output: {
        path: path.join(__dirname, './dist'), // 输出文件 的存放路径
        filename: 'bundle.js' // 输出文件的名称
    }
}
module.exports = {
    mode: 'production'
}

在这里插入图片描述

webpack.config.js 文件 与src目录同级

Source Map

解决 默认Source Map的问题: 运行时 报错的行数 与 源代码行数 一致, 方便排查问题

module.exports = {
    mode: 'development', // 开发阶段
    devtool: 'eval-source-map'
}
module.exports = {
    mode: 'production', // 生产发布
    devtool: 'nosources-source-map'
}

在这里插入图片描述

@ 代表src目录的设置

webpack.config.js

const path = require('path') // 导入node.js中 专门操作路径的模块
module.exports = {
    mode: 'production',
    devtool: 'nosources-source-map',
    resolve: {
        alias: {
            // 告诉 webpack,@ 符号代表src这一层目录
            '@': path.join(__dirname, './src/')
        }
    }
}

ES6 模块化

要求

在这里插入图片描述

  • 确保node 版本在v14.15.1 及以上
  • package.json的 根节点添加 “type”:“module” 节点

在这里插入图片描述
在这里插入图片描述

默认 导出

export default 只能 使用一次

let n1=10 // 定义模块 私有成员 n1
let n2=20 // 定义模块 私有成员 n2
function  show(){} // 定义模块 私有方法

export default { // 使用export default 默认导出语法,向外共享n1 和show两个成员
    n1,
    show
}

默认导入

接受名称 必须是 合法的变量名!!!
导入的文件 必须 要写好 路径和文件名 (不能 漏掉 .js 后缀)

import u from './ex.js'
console.log(u)

结果:
在这里插入图片描述

按需 导出、导入

export let n1 = 10
export let n2 = 20

export function show() {
}

{n1,n2} 相当于 解构

import {n1,n2} from './ex.js'
console.log(n2)

混合使用

export let n1 = 10
export let n2 = 20

export function show() {
}
export default {
    n1,
    show
}

info 就是 默认 导出的数据集合

import info,{n1,n2} from './ex.js'
console.log(n2)
console.log(info)

直接导入 并执行模块中的代码

console.log('6666')
import  './ex.js'

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值