Vue 路由跳转的时候遇到一些图片CSS不加载 解决方案

简介: 通常在我们写js 的代码的时候都会加入 window.onload() 再onload 函数中写代码,这样做的意义就是能够在文档加载完成之后才执行js 代码。

思路分析:


通常在我们写js 的代码的时候都会加入 window.onload() 再onload 函数中写代码,这样做的意义就是能够在文档加载完成之后才执行js 代码。

而在用 jquery 时, 通常用的是 $(function () {}) 这样写的作用和onload 函数差不多,都是在文档加载完成之后自动执行。


问题出现了:


这就导致了函数的执行条件是文档加载完成时才会触发函数。

而在 vue 中,为了节省资源,vue-router 在跳转页面时,实际上是不跳转页面的,而仅仅是在原页面上改变一些内容,所以说,在 vue 中, 跳转到子路由,页面是不会刷新的,也就是说,onload的条件没有被触发。

而 amazeui 是基于jquery 的,jQuery 的 $(function () {}) 也是一样,在跳转到子路由时, 并没有刷新页面,也就是没有加载 amaze.min.js 的函数。

其实在模板里面, 也能看到一个现象,在刷新页面时,也能看到一闪而过的一个 大的 显然,amazeui 把select 重写了,但是并没有将原生的 select 标签改变,而是将其隐藏, 狸猫换太子,将一个新的 div 放在原来的 select 标签位置, 而在其中起重要作用的就是 js 但是 js 文件并没有重新加载,就导致了 select 标签并没有被替换成新的 select 控件。

解决方案在充当导航的组件中添加一个 method ,使router 在跳转子路由时, 刷新页面。

简单实现:

首先在充当导航跳转组件的 methods 里增加一个函数:

this.$router.go(0) 的意思是刷新页面。

然后在跳转的 router-link 标签上绑定事件函数: 这样, 在页面跳转之后,会刷新页面,页面内的外部资源重新加载,成功渲染。image.pngimage.png



相关文章
|
1月前
|
JSON 前端开发 JavaScript
CSS模块postcss-modules,在jsx中实现vue里的scoped
CSS模块postcss-modules,在jsx中实现vue里的scoped
|
1月前
|
缓存 监控 JavaScript
探讨优化Vue应用性能和加载速度的策略
【5月更文挑战第17天】本文探讨了优化Vue应用性能和加载速度的策略:1) 精简代码和组件拆分以减少冗余;2) 使用计算属性和侦听器、懒加载、预加载和预获取优化路由;3) 数据懒加载和防抖节流处理高频事件;4) 图片压缩和选择合适格式,使用CDN加速资源加载;5) 利用浏览器缓存和组件缓存提高效率;6) 使用Vue Devtools和性能分析工具监控及调试。通过这些方法,可提升用户在复杂应用中的体验。
45 0
|
1月前
|
缓存 JavaScript
一文彻底学会Vue路由
Vue Router简介,包括基本使用、嵌套路由、参数传递和路由守卫。首先,通过`npm i vue-router@3`安装,然后在`main.js`引入并应用。配置路由时,创建VueRouter实例,定义如`/home`、`/about`等路径及其对应组件。使用`<router-link>`进行切换,`<router-view>`展示组件。嵌套路由通过`children`配置多级路径,参数传递可使用`query`或`params`。路由守卫分为全局、独享和组件内三种,用于控制访问权限。
29 1
一文彻底学会Vue路由
|
18天前
|
JavaScript
|
24天前
|
JavaScript 程序员 网络架构
vue路由从入门到进阶 --- 声明式导航详细教程
vue路由从入门到进阶 --- 声明式导航详细教程
vue路由从入门到进阶 --- 声明式导航详细教程
|
27天前
|
存储 JavaScript 前端开发
笔.COOL,一个功能完备、使用便捷的在线HTML/CSS/JS以及Vue编辑器和作品分享平台
笔.COOL是一个新兴的在线 HTML/CSS/JS 及 Vue 编辑器,提供实时预览和云端存储功能。用户可以随时随地编写和保存代码,同时分享作品给他人预览和学习。它也是一个实用的 BUG 复现工具,支持嵌入编辑器到博客,促进代码交流。社区活跃,适合开发者展示作品、获取灵感和学习。
|
1月前
|
资源调度 JavaScript 前端开发
阿珊详解Vue路由的两种模式:hash模式与history模式
阿珊详解Vue路由的两种模式:hash模式与history模式
|
1月前
|
缓存 JavaScript
在 Vue 组件中使用计算属性和侦听器来响应路由变化
【5月更文挑战第8天】Vue Router 中,计算属性和侦听器常用于根据路由变化更新组件状态。计算属性缓存依赖,当路由参数改变时自动更新,如示例中的 `userId`。侦听器则监听 `$route` 变化,执行相应操作,例如在 `currentUserId` 示例中响应 `userId` 更新。计算属性适合简单变化,而异步操作或复杂场景可选用侦听器。Vue 3 中,`watchEffect` 减少了部分侦听场景的复杂性。总之,它们用于组件内部响应路由变化,而非直接处理路由逻辑。
24 4
|
24天前
|
资源调度 JavaScript UED
vue路由的基础知识总结,vueRouter插件的安装与使用
vue路由的基础知识总结,vueRouter插件的安装与使用
|
27天前
|
JavaScript 前端开发 数据可视化
Vue.js 与 ViewDesign:为企业级 Web 应用提供高效可靠的解决方案
Vue.js 是一款开源的渐进式 JavaScript 框架,擅长构建用户界面,适用于各种规模的应用。其特点包括渐进式设计、虚拟 DOM、响应式数据绑定和组件化。ViewDesign(前身为 iView)是基于 Vue.js 的企业级 UI 组件库,提供丰富的组件、遵循企业设计规范,并支持高度定制。两者结合,能提升开发效率、保证界面一致性、简化维护,且两者生态均得到良好支持。Vue.js 3 的支持使得开发更加现代和高效。