美文网首页
vue-property-decorator混入mixin

vue-property-decorator混入mixin

作者: chxuu | 来源:发表于2020-10-27 08:33 被阅读0次

从vue-property-decorator的文档中可以看到这么一句话:Mixins (the helper function named mixins provided by vue-class-component)

所以,vue-property-decorator中使用mixin的话,可以借助vue-class-component

安装vue-class-component

npm install vue-class-component --save

mixin文件:myMixin.ts

import { Vue, Component } from 'vue-property-decorator';
@Component
export default class MyMixin extends Vue {
    // data
    public value: string = 'myMixin';
    // method
    public setValue (value: string) {
       this.value = value
    }
}

在myApp.tsx中使用myMixin.ts

import { Vue, Component } from 'vue-property-decorator';
import { mixins } from 'vue-class-component';
import myMixin from './myMixin.ts'

@Component
export default class MyApp extends mixins(myMixin) {
     public mounted () {
        // 访问value
        console.log(this.value) // myMixin
        // 调用setValue
        this.setValue('myApp')
    }
}

以上,使用vue-class-component提供的Mixins,可以很方便的在ts中使用mixins。另外,还可以在component中使用mixin,但是需要绕过ts的验证问题,这里不推荐使用。

相关文章

  • vue-property-decorator混入mixin

    从vue-property-decorator的文档[%5B%E6%A8%99%E9%A1%8C%5D(%E9%8...

  • 《Java编程思想 Generics》读书笔记——Mixin

    何谓Mixin Mixin即mix in,混入的意思。和多重继承类似,但通常混入Mixin的类和Mixin类本身不...

  • Vue中的高级语法笔记

    mixin混入 mixin混入:1.组件data优先级高于mixin data优先级 生命周期函数,先执行mixi...

  • vue mixin

    混入 mixin 混入 (mixin) 提供了一种非常灵活的方式,来分发 Vue 组件中的可复用功能。一个混入对象...

  • mixin (混入)

    混入对象包含任意组件选项,用于分发组件的可复用功能;组件使用混入对象时,混入对象的组件选项混合到该组件本身的选项中...

  • mixin(混入)

    功能:可以把数个组件共用的配置提取成一个混入对象使用方式:第一步定义混合。例如:{data(){...},meth...

  • 混入 mixin

    混入提供了一种非常灵活的方式,来分发Vue组件中的可复用功能。一个混入对象可以包含任意组件选项。当组件使用混入对象...

  • Vue mixin 混入及自定义Vue插件

    一、mixin混入 mixin即合并公共方法: 可以设置通用的方法或者变量外部mixin 如下:全局mixin:V...

  • Vue之mixin和mixins

    mixin 官网上:混入 (mixin) 提供了一种非常灵活的方式,来分发 Vue 组件中的可复用功能。一个混入对...

  • vue 组件的理解

    Vue.mixin 混入 (mixin) 提供了一种非常灵活的方式,来分发 Vue 组件中的可复用功能。一个混入对...

网友评论

      本文标题:vue-property-decorator混入mixin

      本文链接:https://www.haomeiwen.com/subject/jhetvktx.html