美文网首页
Drat Mixin最基础的理解

Drat Mixin最基础的理解

作者: 小吉快跑呀 | 来源:发表于2019-07-11 09:32 被阅读0次

之前看过几篇关于mixin的文章,讲的挺绕的,今天偶然看见一篇文章几句话就讲清楚了这个概念:

定义一个类三个类,A extends B with C,这就是mixin的用法,with表示把B中方法签名和C中方法相同的方法换成C中的方法,在下面的实例中,A最后得到的hello方法是C中的实现,这就是with的作用

class A extends B with C{
}

class B{
  hello(){
    print('xiaobuji B');
  }
}
class C{
  hello(){
    print('xiaobuji C');
  }

当然也可以把class关键字环卫minin,不过这貌似没有什么特效,只是容易识别而已,但是如果是像下面这样写的话,就不一样了,他表示D类只能被C类或C的子类with

mixin D on C{
  hello(){
    print('xiaobuji D');
  }
}
class A extends B with D{}//非法
class A extends C with D{}//合法

flutter中的AutomaticKeepAliveClientMixin就是这样的写法,他就只能和State类混合,用来替换State中的一些方法,达到保存状态的目的

mixin AutomaticKeepAliveClientMixin<T extends StatefulWidget> on State<T> {}

相关文章

  • Drat Mixin最基础的理解

    之前看过几篇关于mixin的文章,讲的挺绕的,今天偶然看见一篇文章几句话就讲清楚了这个概念: 定义一个类三个类,A...

  • Drat与Flutter基础

    Drat语法 1、基本语法 返回修饰词 main (){} 2、基本数据类型 Drat是强类型语言var 代表不确...

  • SCSS

    变量 mixin mixin 基本用法 mixin 传一个参数 mixin 传多个参数 extend 基础知识 简...

  • Dart Mixin

    关于Dart Mixin 的一些理解 Mixin are a way of reusing code in mul...

  • Mixin理解

    在学习Flutter过程中,dart语言中的关键字Mixin是个新概念,本文列出两个例子,希望读者可以秒懂。有Mi...

  • 【Vue】强大的Mixin混入

    什么是mixin?个人理解:mixin可以定义公用的,data,created,methods,computed,...

  • 【译文】Mixin——一条很酷的公链

    Mixin 是什么? Mixin 有很多东西,但最好把 Mixin 这个词理解为公链。Mixin 网络是一个数字资...

  • MIXIN,稳坐天枰的闪电网络?

    Mixin是什么? Mixin是基于BFT-DAG共识算法的新型公链,Mixin网络的基础是运行在可信执行环境上的...

  • 使用ts和vue开发一个应用

    工程创建 基础用法 mixin的使用 mixin-one.ts App.vue 项目代码:https://gith...

  • JS函数关于mixin,柯里化,高阶函数

    mixin: Mixin是JavaScript中用的最普遍的模式,几乎所有流行类库都会有Mixin的实现。 Mix...

网友评论

      本文标题:Drat Mixin最基础的理解

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