Nuxt资源文件夹,别名,图片url和css

栏目: CSS · 发布时间: 7年前

内容简介:Nuxt 有两种资源文件夹它们的区别文档上已经说得很清楚:如果你的静态资源文件需要 Webpack 做构建编译处理,可以放到 assets 目录,否则可以放到 static 目录中去。

资源文件夹

Nuxt 有两种资源文件夹 assetsstatic

它们的区别文档上已经说得很清楚:

如果你的静态资源文件需要 Webpack 做构建编译处理,可以放到 assets 目录,否则可以放到 static 目录中去。

具体表现就是:

(图片或字体)的尺寸小于 1K 的时候,它将会被转换成 Base-64 data URL 来内联引用;否则它将被拷贝至指定的子目录(在 .nuxt 目录下),并被重命名(加上 7 位的哈希码作为版本标识)以实现更好的缓存策略。

而 static 里面的资源不会做这些处理。

所以引用的方式也不同:

<!-- 引用 static 目录下的图片 -->
<img src="/my-image.png" />

<!-- 引用 assets 目录下经过 webpack 构建处理后的图片 -->
<img src="~/assets/my-image-2.png" />

别名

Nuxt 有两种默认别名写法 ~@

我个人推荐 @ ,因为在 2.0 后 ~ 可能会出问题:

请注意: 从 Nuxt 2.0 开始,~/alias 将无法在 CSS 文件中正确解析。你必须在 url CSS 引用中使用~assets(没有斜杠)或@别名,即 background:url(“~assets/banner.svg”)

sass/css 引用图片的路径

在 scss 或 css 中最好不要使用别名路径,而应该遵循 css 规范,路径相对于 css 本身。因为别名往往在 scss,css 中不起作用。

如果你打算将图片放到 assets 中,那么你最好在 scss 和 css 中使用相对路径引用图片。

动态 src 的写法

正确的写法:

<img :src="require('@/assets/img/myimg' + n + '.jpg')">

上面的例子里,因为图片是放到了 assets 里面且又使用了别名,所以要让 webpack 知道,就要使用 require

错误的写法(没有 require):

<img :src="'@/assets/img/myimg' + n + '.jpg'">

错误的写法(src 没有冒号):

<img src="require('@/assets/img/myimg' + n + '.jpg')">

这一点来说,确实不如 React 的纯 javascript 来的直观。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

交易系统

交易系统

武剑锋 / 上海人民出版社 / 2011-1 / 32.00元

《交易系统:更新与跨越》是中国第一部研究证券交易系统的专业著作,填补了这一领域的学术空白。既回顾和总结了系统规划、建设和上线过程中,技术管理、架构设计、应用调优、切换部署、运行维护等方面的经验和教训,也从较为宏观的角度描述了独具中国特色的交易技术支撑体系,特别是,通过分析其他资本市场交易系统的近年来发展历程和后续的技术发展规划,探索了未来业务创新和技术创新的大致框架和可能的模式。相信《交易系统:更......一起来看看 《交易系统》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码