Código TypeScript (de https://lodash.com/docs#chain):
var users = [
{ 'user': 'barney', 'age': 36 },
{ 'user': 'fred', 'age': 40 },
{ 'user': 'pebbles', 'age': 1 }
];
var youngest = _.chain(users)
.sortBy('age')
.map(function(chr) {
return chr.user + ' is ' + chr.age;
})
.first()
.value();
Reclamações do compilador tsc:
error TS2339: Property 'sortBy' does not exist on type 'LoDashExplicitArrayWrapper<{ 'user': string; 'age': number; }>'.
o mesmo acontece com pluck
Sim, eu trabalho nisso e se você escrever quais métodos são interessantes para você, vou adicioná-los primeiro.
por # 6600: +1:
error TS2339: Property 'first' does not exist on type 'LoDashExplicitArrayWrapper<string>'.
@ joe-chung sim, existem alguns problemas na definição do módulo e eles tornam difícil adicionar assinaturas first
(e alguns outros métodos) agora
Property 'some' does not exist on type 'LodashArrayWrapper<any[]>'
@thakursagar A interface LodashArrayWrapper
não existe na definição de lodash
há muito tempo. Verifique se você usa a versão mais recente da definição. O método some
já deve funcionar bem.
Você quer que eu envie um PR para _.reduce no LoDashExplicitArrayWrapper? Isso seria útil para nós
@gamebox Sim, adicione _.reduce, definitivamente está faltando.
também precisa de _.uniqBy
também _.flattenDepth()
e _.sort
e _.split
_.flatMap
por favor
@chrootsu _.update
e _.updateWith
por favor :)
A propriedade 'mean' não existe no tipo 'LoDashStatic'.
Adicione _ (x) .split
Mesmo problema: Property 'split' does not exist on type 'LoDashExplicitWrapper<string>'
versão lodash: 3.10.1
Dependência de typings.json:
"lodash": "registry:dt/lodash#3.10.0+20160802150749"
_.keyBy
parece estar faltando
_.findWhere também está faltando. Você pode por favor adicionar isto também ...
como é _.assign
_.flatMapDeep, por favor? :)
_.max em LoDashExplicitArrayWrapper
interface LoDashExplicitArrayWrapper
/ **
* @see _.max
* /
max (
iteratee: ListIterator
): LoDashExplicitWrapper
/**
* <strong i="17">@see</strong> _.max
*/
max(iteratee: string): LoDashExplicitWrapper<number>;
/**
* <strong i="18">@see</strong> _.max
*/
max(): LoDashExplicitWrapper<number>;
/**
* <strong i="19">@see</strong> _.max
*/
max(iteratee: Dictionary<{}>): LoDashExplicitWrapper<number>;
}
Não sei por que isso está fechado ... parece que faltam vários métodos nas digitações ( _.uniqWith
para mim)
e _.find
nos dois
Property 'find' does not exist on type 'LoDashExplicitObjectWrapper<{}>'.
e
Property 'find' does not exist on type 'LoDashExplicitArrayWrapper<{}[]>'
e _.pares
Property 'pairs' does not exist on type 'LoDashStatic'.
_.incluir também
_.dividir também
tudo o que vier depois de _.chain teria esse erro, por favor ajude a consertá-lo @chrootsu @rbcasperson
_.map também ...
Este problema deve ser reaberto.
Eu verifiquei os comentários acima, e eles parecem estar faltando:
_.divide();
_.include();
_.pairs();
Este bug deve ser reaberto, pois muitos métodos (mencionados acima) ainda não possuem a digitação correta.
Também está faltando a transformação ,
relatado separadamente por outra pessoa aqui # 14748
isso vai ser consertado em breve?
existe uma solução alternativa?
Uma solução alternativa pode ser assim:
(lodash.chain(stuff).pickBy(lodash.isArray) as any).transform(transformFunction, []).value();
_.mapValues () não existe em UnderscoreStatic. Este método está faltando na atualização do Lodash Kindly.
parece que _mapValues não está incluído na cadeia, mas funciona como autônomo
A propriedade 'keys' não existe no tipo 'LoDashImplicitArrayWrapper
A propriedade 'length' está ausente no tipo 'LoDashImplicitArrayWrapper <...>'
A propriedade 'diferençaWith' não existe no tipo 'LoDashImplicitObjectWrapper
Certifique-se de chamar https://lodash.com/docs/#prototype -value no final de sua rede
_ horas por favor
_.partição por favor
_.cond por favor
_.próximo também, por favor
_.upperCase e _.deburr por favor
cadeia (blabla) .mapValues () ......
resultado em erro tslint
Property 'mapValues' does not exist on type 'LoDashExplicitObjectWrapper<{}>'.
Ops ... o método ausente não existe no lodash.
Isso quase funciona, mas .pickBy também está sujeito a esse problema!
(lodash.chain (stuff) .pickBy (lodash.isArray) como qualquer) .transform (transformFunction, []). value ();
_.uniqWith por favor
Existe alguma maneira de consertarmos isso sozinhos?
Este tópico tem alguns anos e ainda existem funções que não funcionam!
@ charlesr1971 Também tenho o problema com _.uniqWith
, parece que a função ainda funciona, mas a interface ainda não foi definida.
Comentários muito úteis
Uma solução alternativa pode ser assim: