![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
vue
小玲子小玲子
不忘初心
展开
-
使用el-dropdown 下拉菜单时移入或点击元素都不显示对应下拉内容,并报错 this.triggerElm.setAttribute is not a function
不具名插槽元素作为触发元素,当前报错为触发元素调用方法调用报错,考虑是否是触发元素获取错误。检查移入的组件和下拉显示的组件先后顺序,移入的组件必须在下拉显示的组件前面。查看el-dropdown组件源码,如果没有单独设置移入元素,则使用。...原创 2022-08-15 18:26:31 · 6875 阅读 · 3 评论 -
vueRouter动态添加根路由和子路由
需求:项目为分模块开发,监听到路由地址变化后会动态加载对应的模块,从而动态为框架添加相应的路由。但是有些路由是框架内的页面,有些路由是根路由,比如登录页面是根路由页面,占据整个页面,而业务页面是框架内的页面,框架包含header、aside、main等,路由页面在main显示。实现:router.addRoute()方法动态添加根路由:动态添加子路由:其中parentName为父级路由定义的name字段。举例:...原创 2022-07-11 10:00:17 · 6061 阅读 · 2 评论 -
vue router切换子路由,父路由对应组件也被刷新问题
下面是网站的大概框架图:包含主框架、子模块、子模块下的子路由组件,其中/a匹配子模块1,/a/b和/a/b都是子模块1的子路由,显示在子模块的中间容器中问题:当路由从/a/b到/a/c时,子模块1 整个页面都被刷新,包括侧边菜单和中间子路由组件。期望:从/a/b到/a/c时只更新中间内容组件,侧边菜单组件保持当前状态导致问题的原因:在App.vue的router-view标签中设置了key值为$route.fullPath,那么路由地址一旦改变就会刷新整个路由组件,路由组件不会复用。解决:删除A原创 2022-05-24 14:52:02 · 5792 阅读 · 0 评论 -
vue刷新页面后在mounted中无法获取this.$route.path的真实值
想要在页面刷新后根据当前路由路径判断当先活跃的菜单,故期望通过this.$route.path来获取当前路径,但在created和mounted中this.$route.path值都为/。解决:在mounted中使用setTimeout在定时器中获取pathmounted () { // 不使用setTimeout无法在created和mounted中获取到this.$route的实际值 setTimeout(() => { const curPath = this.$原创 2022-04-13 16:38:11 · 3571 阅读 · 0 评论 -
vue为组件/标签动态绑定多个 attribute属性
需求:在父组件中存在一个对象obj,想把obj中所有属性都作为子组件的attribute添加到子组件中。例父组件:<template> <input></template><script>export default { data(){ return { inputAttr:{ type:'text', placeholder:'请输入', } } }}&原创 2022-03-29 18:02:50 · 6992 阅读 · 2 评论 -
elementui复选框checkbox阻止事件冒泡(折叠面板标题中增加复选框,阻止点击复选框折叠面板展开/折叠)
需求:在折叠面板的标题前面加上复选框,可以选中当前数据问题:点击复选框时,折叠面板会展开又折叠解决:设置复选框的点击的事件冒泡,注意不是设置change事件的事件冒泡@click.stop.native="()=>{}"<el-collapse-item :title="item.settingName" v-for="item in list" :key="item.settingId" > <te原创 2021-12-31 15:35:52 · 4099 阅读 · 3 评论