| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> JavaScript知识库 -> 6 Webpack中的配置-Output -> 正文阅读 |
|
[JavaScript知识库]6 Webpack中的配置-Output |
OutputEntry决定了构建的入口即输入,而Output就是输出,使用该选项可以决定输出资源的存在形式,例如输出文件名称,输出路径等等。 默认的输出路径和输出文件名Output具有默认配置,下面的代码等效于默认配置中的输出路径和文件输出的名称:
该Output配置规定了输出文件的名称为main.js,输出文件的输出路径为当前项目根目录下的dist目录。 FilenameFilename规定了输出文件的文件名称以及文件类型。Filename可以设置如下表几种方式: 可以使用类似[hash:number]的方式来指定生成相关hash的长度(默认为20),例如 [hash:16]。通过指定output.hashDigestLength可以在全局配置相关hash的长度。 PathPath规定了输出文件的路径,对应一个绝对路径:
可以结合hash来动态输出路径,避免缓存的干扰。
ChunkFilenameChunkFilename决定了项目运行时异步加载的文件(非入口文件)名称。ChunkFilename的配置方式参考Filename。
按钮发生点击事件才会去加载模块a,这是一个异步加载的过程。此处加载的文件名称就是由ChunkFilename决定的。 PublicPathPublicPath选项决定了项目运行时相关资源文件加载的路径,其默认值是一个空字符串 “”。设置PublicPath值以后,构建项目构建出的资源被引入路径会发生变化,所以应当谨慎设置该值,避免找不到加载的资源而导致的404错误。Webpack中常用的Webpack-dev-server(本地搭建一个服务器,来运行项目,方便项目的调试)模块加载资源的路径也是以PublicPath为基准,来加载文件。
假设在没有配置PublicPath之前,HTML文件中引入输出文件的路径为main.js,在配置之后,地址将会变成https://www.render.com/main.js。 在编译时无法知道输出文件的PublicPath的情况下,可以留空,然后在入口文件处使用自由变量__webpack_public_path__,以便在运行时进行动态设置,例如:webpack_public_path = myPath。 CrossOriginLoadingWebpack通过JSONP实现对相关文件的异步加载,JSONP的原理是动态的向HTML中插入一个script标签去加载异步资源。CrossOriginLoading则是用于配置这个异步插入的script标签的CrossOrigin值。 启用cross-origin属性加载chunk。以下是可设置的值:
通常设置cross-origin的值来获取异步加载的脚本执时的详细错误信息。 Library和LibraryTargetWebpack构建出的项目就是一个库,LibraryTarget决定了库的类型,例如指定libraryTarget:commonjs,表示导出遵循CommonJs模块规范的库。而Library指定了导出库的名称。两者的结合使用可以构建出适应对应场景的库。 下表中列出libraryTarget支持的几种配置:
构建完成后入口文件的输出结果赋值给变量MyModule,项目引入该库后,可以在全局访问MyModule,实现一些操作。 还可以将Library指定为一个对象,用于给每个构建目标(Target)起不同的名称。
更多Output相关配置请查阅:https://webpack.js.org/configuration/output/ 本本章节提供案例源码下载:https://gitee.com/mvc_ydb/webpack/blob/master/output.zip |
|
JavaScript知识库 最新文章 |
ES6的相关知识点 |
react 函数式组件 & react其他一些总结 |
Vue基础超详细 |
前端JS也可以连点成线(Vue中运用 AntVG6) |
Vue事件处理的基本使用 |
Vue后台项目的记录 (一) |
前后端分离vue跨域,devServer配置proxy代理 |
TypeScript |
初识vuex |
vue项目安装包指令收集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 6:08:27- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |