vue全局混入之状态判断是否执行点击
vue全局混入状态判断是否执行点击
1.项目下创建 mps-ui\src\plugins\listenerClick.js
2.文件内写法
//listenerClick.js import { mapGetters } from 'vuex' export default { computed: { ...mapGetters(['leftNavStatus']) }, data() { return {} }, mounted() { if (document.getElementById('controlBtn11')) { document .getElementById('controlBtn11') .addEventListener('click', this.doSomeThings(), true) } }, methods: { doSomeThings() {} } }
3.main.js
加以下代码
// 全局监听 Vue.mixin(require('./directive/listenerClick.js').default)
全局可使用这里面的变量和方法
vue根据条件决定是否执行事件
再配合三目运算 , 可以更完善
vue中的全局混入mixin
混入提供了一种非常灵活的方式,来分发 Vue 组件中的可复用功能。
一个混入对象可以包含任意组件选项。
当组件使用混入对象时,所有混入对象的选项将被“混合”进入该组件本身的选项。
举例
// 定义一个混入对象 var myMixin = { created() { this.hello() }, methods: { hello() { console.log('hello from mixin!') } } } // main.js全局使用 Vue.mixin(myMixin)
因为是全局混入,myMixin中的数据和方法会被挂载到每个组件的实例对象上
注意:
1、当组件和混入对象含有同名选项时,这些选项将以恰当的方式进行“合并”。
比如,数据对象在内部会进行递归合并,并在发生冲突时以组件数据优先。
2、同名钩子函数将合并为一个数组,因此都将被调用。另外,混入对象的钩子将在组件自身钩子之前调用。
3、值为对象的选项,例如 methods
、components
和 directives
,将被合并为同一个对象。两个对象键名冲突时,取组件对象的键值对。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Vue3配置路由ERROR in [eslint]报错问题及解决
这篇文章主要介绍了Vue3配置路由ERROR in [eslint]报错问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2023-10-10vue-element-admin+flask实现数据查询项目的实例代码
这篇文章主要介绍了vue-element-admin+flask实现数据查询项目,填写数据库连接信息和查询语句,即可展示查询到的数据,需要的朋友可以参考下2022-11-11elementui的el-popover修改样式不生效的解决
在使用element-ui的时候,有一个常用的组件,那就是el-popover,本文就介绍一下elementui的el-popover修改样式不生效的解决方法,感兴趣的可以了解一下2021-06-06在vue中使用Echarts利用watch做动态数据渲染操作
这篇文章主要介绍了在vue中使用Echarts利用watch做动态数据渲染操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-07-07
最新评论