解决uniapp打包上传资源丢失问题

540 阅读2分钟

图片1.png 问题原因:配置了基础路径后,hbuilder构建工具会自动在html文件自动添加/web/路径头,js动态加载的图片则不会。

解决方法:通过import方法导入图片;

图片2.png

1.资源引用路径:‌

当你将运行基础路径设置为/web/时,‌项目中所有引用资源的路径都将以/web/为基准路径。‌例如,‌如果你的项目中有一个图片资源位于images/logo.png,‌那么在HTML中引用这个图片时,‌路径应该是/web/images/logo.png(‌假设HTML文件也在/web/路径下或更深的子路径中)‌。‌

需要注意的是,‌如果你的HTML文件不在/web/路径下,‌但你仍然想要引用/web/路径下的资源,‌你需要确保路径的完整性和正确性。‌

2.静态文件服务:‌

当你在HBuilder中运行Web项目时,‌HBuilder会启动一个内置的Web服务器(‌或者你可能配置了外部的Web服务器)‌。‌这个服务器会根据你设置的运行基础路径来提供静态文件服务。‌因此,‌如果你的运行基础路径是/web/,‌那么服务器将默认从/web/目录下提供静态文件。‌

3.部署:‌

在将Web项目部署到生产环境时,‌你需要确保生产环境中的服务器配置与你在HBuilder中的配置相匹配。‌如果生产环境中的服务器没有/web/这个路径,‌或者/web/路径下没有相应的资源文件,‌那么用户访问时就会出现404错误。‌

因此,‌在部署前,‌你需要仔细检查和调整项目中的资源引用路径,‌以及生产环境中的服务器配置,‌确保它们与你在HBuilder中的开发环境一致。‌

4.HTTPS协议:‌

如果你的项目启用了HTTPS协议,‌并且你的域名指向了正确的服务器和路径,‌那么运行基础路径的设置通常不会影响HTTPS的使用。‌但是,‌你需要确保所有引用的资源(‌包括字体文件、‌图片、‌脚本等)‌都支持HTTPS,‌以避免混合内容警告。‌