Flowtype 什么是'@@传感器/阶跃';意思是

Flowtype 什么是'@@传感器/阶跃';意思是,flowtype,ramda.js,Flowtype,Ramda.js,以下资料来自: 型变压器={ “@@transducer/step”:(r:A,A:*)=>r, “@@transducer/init”:()=>A, “@”传感器/结果“:(结果:=>B } 将函数声明为(acum:Transformer,xf:(a:a)=>R,输入:a):R “@@transducer/*”在这里是什么意思?我在文档中找不到关于此语法的任何信息。这实际上不是关于流本身的特定信息。从Flow的角度来看,每个'@@transducer/*'项都只是一个字符串文字,表示对象中某

以下资料来自:

型变压器={
“@@transducer/step”:(r:A,A:*)=>r,
“@@transducer/init”:()=>A,
“@”传感器/结果“:(结果:=>B
}
将函数声明为(acum:Transformer,xf:(a:a)=>R,输入:a):R

“@@transducer/*”
在这里是什么意思?我在文档中找不到关于此语法的任何信息。

这实际上不是关于流本身的特定信息。从Flow的角度来看,每个
'@@transducer/*'
项都只是一个字符串文字,表示对象中某个属性的名称

此流声明表示
转换器是一个具有三个属性的对象,这些属性以特定字符串作为名称,值是这些函数类型


这可能有助于从Ramda代码中删除。您可以看到它只是一个对象,三个键指向特定功能。

谢谢您的回答!这与幻想之地的规范合规性有关吗?不适用于幻想之地。看起来它是Transformers js的标准集,是Clojure Transformers到js的一个端口,它创建了以下名称:
type Transformer<A,B> = {
  '@@transducer/step': <I,R>(r: A, a: *) => R,
  '@@transducer/init': () => A,
  '@@transducer/result': (result: *) => B
}

declare function into<I,T,A:Array<T>,R>(accum: Transformer<I,R>, xf: (a: A) => R, input: A): R