• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

Vue + Webpack + Vue-loader学习教程之相关配置篇

vue 搞代码 4年前 (2022-01-08) 25次浏览 已收录 0个评论

这篇文章主要介绍了关于Vue + Webpack + Vue-loader的相关配置篇,文中通过示例代码介绍的非常详细,相信对大家具有一定的参考价值,需要的朋友们下面来一起看看吧。

前言

之前已经介绍过了Vue + Webpack + Vue-loader的相关功能介绍,大家可以点击这篇文章了解详情。下面就来看看相关配置篇,感兴趣的可以参考学习。

使用预处理器

在 Webpack 中,所有的预处理器需要和一个相应的加载器一同使用。vue-loader 允许你用其它的 Webpack 加载器去处理 Vue 组件一部分代码。它会根据 lang 属性自动用适当的加载器去处理。

CSS

例如,我们编译用 SASS 编译 标签:

 npm install sass-loader node-sass --save-dev
  /* 这里写一些 sass 代码 */ 

在引擎内,首先, 标签内的内容会被 sass-loader 编译,然后再被进一步处理。

JavaScript

默认情况下,Vue 组件内的所有 JavaScript 会被 babel-loader 处理。当然,你也可以更改:

 npm install coffee-loader --save-dev
 

Templates

处理模板的过程有点不同,因为大多 Webpack 模板加载器(比如 jade-loader )会返回一个模板处理函数,而不是被编译过的 HTML 字符串。我们只要安装 jade ,而不是 jade-loader :

 npm install jade --save-dev
  div h1 Hello world! 

重要提示: 如果你使用 vue-loader@<8.2.0, 你也需要安装 template-html-loader.

内联加载请求

在 lang 属性上,你能使用 Webpack loader requests :

  /* use sass here with expanded output */ 

但是,注意这样只适用特定的 Webpack,并不兼容 Browserify 和 vueify。 如果你想让你的 Vue 组件发布成一个第三方组件的话,避免这样使用

URL资源处理

默认情况,vue-loader 是自动用 css-loader 和 Vue 组件编译器来处理样式和模板文件的。在处理过程中,所有的资源 URL 比如 , background: url(...) 和 CSS @import 都是被当做依赖的模块来处理。

例如,url(./image.png-600) 被转译成 require('./image.png-600')

 

如上会被再转译成:

 createElement('img', { attrs: { src: require('../image.png-600') }})

因为 .png-600 并不是个 JavaScript 文件,你需要配置 Webpack 使用 file-loader 或者 url-loader 处理它们。项目脚手架工具 vue-cli 也能帮你配置这些。

这样做的好处是:

  1. file-loader 允许你指定在哪里复制和存放静态资源文件 ,以及用版本哈希值命名从而更好利用缓存。 这意味着,可以把图片放到 *.vue 文件旁边,可使用相对路径,而不需要担心发布时候的 URL。使用适当的配置,Webpack 在打包输出的时候,会自动把文件路径转为正确的 URL。
  2. url-loader 允许你内联 base-64 数据格式的URL资源,如果小于设定的阈值。这样可以减少 HTTP 请求小文件的数量。如果文件大于这个阈值。会自动it automatically falls back to file-loader.

加载器高级配置

若你想自定义载器的配置,不要 vue-loader 来推断。 或你只想覆盖加载器内置的配置。 那就这样做,在你 Webpack 配置文件里,添加一个 vue 块,并指定 loaders 选项:

Webpack 1.x Example:

 // webpack.config.js module.exports = { // other options... module: { loaders: [ { test: /\.vue$/, loader: 'vue' } ] }, // vue-loader 配置 vue: { // ... 其他 vue 选项 loaders: { // 用 coffee-loader 加载所有没有 "lang" 属性的  js: 'coffee', // 直接把  作为 HTML 字符串来加载,不需先用 vue-html-loader 处理。 html: 'raw' } } }

Webpack 2.x (^2.1.0-beta.25):

 module.exports = { // 其他选项... module: { // module.rules 是和版本1.x中的 module.loaders 是相同的 rules: [ { test: /\.vue$/, loader: 'vue', // vue-loader 选项在这里配置 options: { loaders: { // ... } } } ] } }

这里是个实际的加载器配置高级用法的实例 提取组件内的 CSS 到单独文件。

提取CSS到单独文件

如下是提取所有程序的 Vue 组件中的 CSS 到一个单独的 CSS 文件的配置:

Webpack 1.x

 npm install extract-text-webpack-plugin --save-dev
 // webpack.config.js var ExtractTextPlugin = require("extract-text-webpack-plugin") module.exports = { // other options... module: { loaders: [ { test: /\.vue$/, loader: 'vue' }, ] }, vue: { loaders: { css: ExtractTextPlugin.extract("css"), // 你也能包含  或其他语言 less: ExtractTextPlugin.extract("css!less") } }, plugins: [ new ExtractTextPlugin("style.css") ] }

Webpack 2.x (^2.1.0-beta.25)

 npm install [email protected] --save-dev
 // webpack.config.js var ExtractTextPlugin = require("extract-text-webpack-plugin") module.exports = { // 其他选项... module: { rules: [ { test: /\.vue$/, loader: 'vue', options: { loaders: { css: ExtractTextPlugi<mark>来源gaodaimacom搞#^代%!码网</mark>n.extract({ loader: 'css-loader', fallbackLoader: 'vue-style-loader' // <- this is a dep of vue-loader, so no need to explicitly install if using npm3 }) } } } ] }, plugins: [ new ExtractTextPlugin("style.css") ] }

总结

好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

您可能感兴趣的文章:

  • webpack常用配置项配置文件介绍
  • 深入理解Webpack 中路径的配置
  • webpack教程之webpack.config.js配置文件
  • vue-cli的webpack模板项目配置文件分析
  • webpack引入eslint配置详解
  • webpack多入口文件页面打包配置详解
  • 详解vue2.0脚手架的webpack 配置文件分析
  • 详解vue-cli + webpack 多页面实例配置优化方法
  • 详解webpack之scss和postcss-loader的配置
  • webpack配置sass模块的加载的方法
  • webpack构建vue项目的详细教程(配置篇)
  • 5分钟打造简易高效的webpack常用配置
  • webpack配置导致字体图标无法显示的解决方法
  • webpack3+React 的配置全解
  • 浅谈在vue中用webpack打包之后运行文件的问题以及相关配置方法
  • 详解Webpack + ES6 最新环境搭建与配置
  • webpack配置打包后图片路径出错的解决
  • webpack高级配置与优化详解

以上就是Vue + Webpack + Vue-loader学习教程之相关配置篇的详细内容,更多请关注gaodaima搞代码网其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Vue + Webpack + Vue-loader学习教程之相关配置篇

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址