vue组件内方法抽取问题

有几个组件里都使用了一些方法,都写在methods里了。
这些方法里用了很多data里的变量,有很多this.xxx this.yyy this.zzz等等,大概有10个变量。
我想把这些方法提出来放到一个js里,然后import到vue组件里。
但这些方法内部的变量怎么提取出来呢?
都通过传参传进去吗?

Vue2x 最好的办法就是使用mixin
如果需要传参的mixin可以使用以下方法

export default rightType => ({ // rightType作为参数传入,返回特定mixin
  data() {
    return {
        xxx:'1'
    }
  },
  computed: {
    hasRight() { // 判断用户是否有权限进入本页面的计算属性
      // 这里的user是之前在app中通过接口返回注入store的用户信息
      const { rightList } = this.$store.state.user;
      return rightList.indexOf(rightType); // 问题解决,美滋滋
    }
  },
  methods: {
    zzz() {
        
    }
  }
})

当然现在vue3x的出现就是为了解决你说的问题,使用compisition Api,把逻辑组合到一个hooks中,直接导入就好了showtooltip

  • 0
    点赞
  • 0
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

iteye_5212

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值