webpack处理vue项目静态资源及public/static/assets目录的区别

Webpack生成企业站静态页面 - 项目搭建 现在Web前端流行的三大框架有Angular、React、Vue,很多项目经过这几年的洗礼,已经都 转型使用这三大框架进行开发,那为什么还要写纯静态页面呢?比如Vue中除了SPA单页面开发,也可以使用nuxt.js实现SSR服务端渲染,满足SEO优化。但是对于那些还是在维护老项目,使用MVC、MVP进行开发,或者觉得使用nuxtjs成本较高小型项目,从历史原因和项目实际情况考虑,会退而求其次,让前端快速完成页面框架和样式,交付后端进行数据渲染。 阅读详情

Vue 静态资源可以通过两种方式进行处理:

1、在 JavaScript 被导入或在 template/CSS 中通过相对路径被引用。这类引用会被 webpack 处理。

2、放置在 public 目录下或通过绝对路径引用。这类资源将会直接被拷贝,而不会经过 webpack 的处理。

在项目中的webpack.config.js等项目配置文件中使用的require属于nodejs范畴,而进入index.js后,加载的组件中的require都属于webpack的解析范畴。

webpack中require的用法

let url = "@/assets/images/carousel/logo.svg"
require(url)    //报错

let url = "logo.svg"
require("@/assets/images/carousel/"+url); //正确

这是因为你修改页面后,webpack进行编译,等待编译完,需要进行工程的打包,然后打包正确,才能热加载运行并刷新页面。
如果require中传入的是个变量,它有可能是计算机系统中的任何目录下的任何文件,那么在打包静态资源时它有可能会将你的电脑整个磁盘遍历一遍(它很傻)。所以至少需要给出在哪个路径下,这样才能精确的将那个路径下的对应文件打包,然后在代码运行时,直接用对应文件名生成正则匹配(因为打包后的文件,可能有hash值。不能直接查文件名),找到后,加载到代码中。

尽可能详细的指定require中的路径,然后拼接变量

参考:

Vue处理静态资源:public、assets目录 - vickylinj - 博客园 (cnblogs.com)

Vue处理静态资源及public/static/assets目录的区别-腾讯云开发者社区-腾讯云 (tencent.com)

Buck电源设计常见的一些问题(一)半桥栅极驱动芯片共性失效问题 半桥驱动芯片主要用在器件可应用于电信,数据通信,便携式存储或更低电压系统中的电源转换器,半桥、全桥、推挽、同步降压,正激变换器和同步整流器等方面。当然难免会遇到不少问题。基本上我们在产品开发的过程中都遇到过栅极驱动芯片坏掉的情况,所以找了一些资料,学习学习。也查找查找原因。 阅读详情

相关推荐

Cadence OrCAD: 层次化设计 Hierarchical Design

详细介绍OrCAD的原理图层次化设计方法。

Fantasy237的博客 1万+

vue2.0/vue3.0 添加静态文件

vue,静态文件static,静态文件public

lp-Strive的博客 7510

DCDC系列(一): COT DCDC基本原理

电流环DCDC属于双环控制模式,根据电流检测的位置,分为峰值电流环控制模式、谷值电流环控制模式和平均电流环控制模式,主要由输出电压反馈环和电流环两个环路来实现控制,其瞬态响应比电压环更好,且有自动限流的功能,但仍需要斜坡补偿网络,且对噪声敏感。Stage3: 在下管NMOS打开阶段,由于后级负载此时间段内消耗的电量较少,所以VFB还未低至Vref,所以此阶段中,上管PMOS和下管NMOS均处于关断状态,此时的电感电流为0mA,此阶段测的VSW上的电压就是Cout上的电压VREG;

weixin_40073649的博客 3938

webpack-dev-server:静态资源目录配置

webpack-dev-server:静态资源目录配置

席木木的博客 8067

用宝塔面板+CentOS 7.6,30分钟搞定DNF手游私服搭建(附全套资源下载)

本文详细介绍了如何使用宝塔面板和CentOS 7.6在30分钟内快速搭建DNF手游私服。通过图形化界面操作,无需复杂命令,即可完成服务端部署、MySQL数据库配置及客户端适配,适合Linux新手快速上手。

weixin_33737774的博客 596

PyQt5混搭qfluentwidgets实战:用FramelessWindow快速打造现代化界面

本文详细介绍了如何将PyQt5与qfluentwidgets组件库结合,利用FramelessWindow快速打造现代化无边框界面。通过环境配置、核心特性解析、组件混用技巧及高级样式定制,帮助开发者提升桌面应用的用户体验和美观度,特别适合需要现代UI设计的Python开发者。

sugar的博客 969

webpack的static和assets目录区别

图一:引用了三个图片,前两个是绝对路径,后一个是相对路径。 图二:ctrl+h查找绝对路径在所出的包里面的位置。可以发现,页面中使用绝对路径时,图片文件不会被打包进js,图片文件需要被原原本本以图片格式存在static目录下,如果修改static中图片文件名,会导致页面找不到图片。 图三:ctrl+h查找相对路径在所出的包里面的位置。可以发现,使

weixin_40012136的博客 1万+

Jetson Orin NX上CAN总线调试全攻略:从硬件焊接到开机自启动(附常见问题解决方案)

本文详细介绍了在NVIDIA Jetson Orin NX开发板上进行CAN总线调试的全过程,包括硬件焊接、驱动配置、通信测试和开机自启动设置。针对常见问题如信号接反、波特率设置等提供了实用解决方案,帮助开发者快速实现稳定的CAN总线通信。

c2d3e4f的博客 1076

Webpack 项目中 html-webpack-plugin 和 public 目录的关系

为什么需要?比如生产环境的打包js文件其实是动态文件名,像这种情况不能够写死,因此就需要去帮忙配置最近还整理一份JavaScript与ES的笔记,一共25个重要的知识点,对每个知识点都进行了讲解和分析。能帮你快速掌握JavaScript与ES的相关知识,提升工作效率。

梅花寺 1233

从“Segmentation fault”到流畅运行:深入解析CARLA Engine crash与Signal 11报错排查指南

本文深入解析了CARLA仿真平台运行时遭遇的Engine crash与Signal 11(Segmentation fault)报错。文章指出,该错误的根本原因常与NVIDIA显卡驱动版本不兼容有关,并提供了从日志分析、常见方案试错到驱动安全降级的完整排查指南,帮助用户从崩溃走向流畅运行。

pca5navigator的博客 462

【教程4>第3章>第1节】通信系统高阶调制解调概述

高阶调制(High Order Modulation)是一种先进的数字调制技术,旨在通过增加每个符号携带的信息比特数来提高无线通信系统的数据传输速率和频谱效率。这种技术特别适用于具有较高信噪比(Signal-to-Noise Ratio, SNR)的通信环境,例如卫星通信、光纤通信以及一些高质量的无线通信链路。在数字通信中,调制是将数字信号(比特流)转换为适合在物理信道上传输的模拟信号的过程。高阶调制通过使用更多的信号状态或星座点来表示不同的比特组合,从而在一个符号周期内传输更多的信息。

FPGA/MATLAB学习教程/源码/项目合作开发 1702

Vue中的assets和static目录:使用场景及区别解析

在Vue项目中,assets目录和static目录是用于存放静态资源文件的两个常见目录。它们在使用场景和特性上有所不同:assets目录适用于需要经过构建处理的静态资源,而static目录适用于不需要经过构建处理的静态资源。通过选择合适的目录,我们可以充分利用Webpack的优化功能,提高项目的性能和开发效率。

alive_new的博客 7894

公开 学生课堂行为数据集 SCB-Dataset: A Dataset for Detecting Student and Teacher Classroom Behavior

公开 学生课堂行为数据集 SCB-Dataset Student Classroom Behavior dataset

CSPhD-winston的博客 1万+

vue 项目引用static目录资源_Vue2.0项目入门 — 静态资源目录src/assets和static/区别...

rose.png你应该注意到了,在项目结构上我们有静态资源两个目录:src/assets和static/。他们之间有什么区别?通过webpack处理的资源首先我们需要了解webpack如何处理静态资源。在*.vue组件中,所有的html模板和css都会被vue-html-loader和css-loader压缩并且查找资源路径。例如,(../logo.png)和background:url(../l...

weixin_36284848的博客 1565

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

vue静态资源放在src/assets与static目录下的区别

webpack的static和assets目录区别

Harley567 5023

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

vue中打包dist文件内static 和 assets 的区别

在Vue.js项目中,assets和static是两个用于存放静态资源的文件夹,但它们在使用方式和处理机制上有所不同。

旭久的博客 1373

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

面试题之assets和static的区别

在项目结构里,有两个资源文件的路径,分别是:src/assets 和 static/。那这两个到底有什么区别呢? 简单的讲,static放别人家的,不会变动的,第三方资源(第三方比如jQuery,swiper等),assets放自己写的(自己写的样式及js文件等)相同点 assets和static两个都是存放静态资源文件。项目中所需要的资源文件图片,字体图标,样式文件等都可以放在这两个文件下,这是相同点不同点 assets中存放的静态资源文件在项目打包时,也就是运行npm run build时会将asset

heima201907的博客 1565

vue项目中的静态资源处理

如图所示,一个vue项目结构如下: src下assets文件夹需要进过webpack打包,而static则不需要进行打包 一、将静态资源放到assets文件夹时 当我们把一些静态资源放到assets文件夹下时,我们需要用相对路径引入: <div> <img :src="require('@/assets/img/1.png')" alt> &...

weixin_43182021的博客 4229

Assets 和 Static 的区别

在现代前端项目中,静态资源文件(如图片、字体、样式文件等)是不可或缺的。为了更好地管理和优化这些资源,前端框架通常会提供专门的目录来存放它们。在 Vue.js 项目中,assets和static就是两个常用的目录。assets和static是现代前端项目中常用的静态资源目录,它们在处理机制和路径引用上存在一些差异。assets目录中的文件会经过构建工具处理,而static目录中的文件会直接复制到输出目录中。在实际开发中,我们应根据具体需求选择合适的目录,并遵循最佳实践来管理和优化静态资源文件。

My_wife_QBL的博客 1403

vue-cli与webpack结合如何处理静态资源

处理静态资源你也许会注意到vue-cli与webpack结合的项目中,我们通常会有两个静态资源的路径:src/assets和static/,他们两者的区别是什么呢?打包的资源为了回答这个问题,我们首先要明白Webpack是如何处理静态资源的。在*.vue组件里,所有的templates和CSS模块都被vue-html-loader和css-loader解析来查找路径URL。举个例子,在<img sr

HeliumLau的博客 1万+

vue中文件在assets与static的区别

相同点:资源在html中使用,都是可以的。 不同点:使用assets下面的资源,在js中使用的话,路径要经过webpack中file-loader编译,路径不能直接写。 assets中的文件会经过webpack打包,重新编译,推荐该方式。而static中的文件,不会经过编译。项目在经过打包后,会生成dist文件夹,static中的文件只是复制一遍而已。简单来说,static中建议放一些外部第...

weixin_42398560的博客 2521

vue项目中存放静态资源目录assets与static的区别

最近使用了vue-cli4创建了项目,项目目录里面取消了static目录,因为之前的项目里面存在static目录,有点迷这两个文件夹的区别,然后就各种查找资料,总结如下(也不知道有没有错…) assets assets中的文件会经过webpack打包,重新编译,推荐该方式。 static static中的文件,不会经过编译。项目在经过打包后,会生成dist文件夹,static中的文件只是复制一遍而已。 在html文件里面 可以使用。但是因为webpack使用的是commenJs规范,所以通过js动态添

Aifangmy的博客 3万+

vue - 源码探究 vue-cli 2 中 '/static'目录和 '/src/assert'目录区别

vue-cli 官方对 - 静态资源的介绍 这里 vue cli 3 里面也大同小异,3 只是把 static 改成了 public 文章目录# 指定 - 输出目录: /dist# 指定 - 静态资源文件名:static# 拷贝 - /static目录 到 /dist/static目录结论:关于 /static 目录# 指定:编译后的名字(或者目录)# url-loadder 的 ...

LawssssCat的博客 1739

vue中assets与static文件夹的区别

static 该目录下的资源不会被 webpack 处理,它们会被直接复制到最终的打包目录下(默认地址是 dist/static),所以引用时需要使用绝对路径。 这是通过在 config.js 文件中的 build.assetsPublicPath 和 build.assetsSubDirectory 链接来确定的。 该目录下文件的绝对路径写法:/static/[filename] assets 该目录下的文件会被 webpack 打包,引用时需要使用相对路径或者模块路径。 动态引用路径时写法:requir

exlinker的博客 844

vue相对路径修改,以及assets和static文件的区别

首先,assets文件夹和static文件夹在vue-cli生成的项目中,都是用来存放静态资源的。 1、assets目录中的文件会被webpack处理解析为模块依赖,只支持相对路径形式。build的时候由Webpack解析为模块依赖。 2、static/ 目录下的文件并不会被Webpack处理:它们会直接被复制到最终的打包目录(默认是dist/static)下。必须使用绝对路径引用这些文件,这是通...

lyc2786161648的博客 3153

vue打包static中有.html,详解Vue-cli中的静态资源管理(src/assets和static/的区别)

你可能注意到了我们的静态资源共有两个目录src/assets和static/,你们它们之间有怎样的区别呢?资源打包为了回答这个问题,我们需要了解webpack是如何处理静态资源的。在所有的*.vue文件中你所有的templates 和CSS 都被vue-html-loader 和css-loader 查询资源的URLs解析. 比如说,在 img src=”./logo.png” 和backgrou...

weixin_42382748的博客 1134
上一篇: flutter组件封装技巧
下一篇: Node中模块查找机制
jsPao
博客等级 码龄7年 549粉丝 107原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值