josdejong/mathjs
在 GitHub 查看TypeScript: inconsistent factory signature (unable to declare custom dependencies)
Open
#2,324 创建于 2021年9月21日
bughelp wantedtypescript
仓库指标
- Star
- (13,832 star)
- PR 合并指标
- (30 天内没有已合并 PR)
描述
I'm customizing mathjs extending its types and methods. In JS I can register a type :
factory('DateTime', ['typed'], function createDateTime({ typed }: { typed?: any }) {
typed.addType({
name: 'DateTime',
test: (x: any) => x && x.constructor.name === 'DateTime'
})
return DateTime
}),
and then use it as a dependency:
factory('datetime', ['typed', 'DateTime'], function createDateTime({ typed, DateTime }) {}
but in TypeScript it's not possible - I'm getting: Type '"DateTime"' is not assignable to type 'keyof MathJsStatic'.
PS> And BTW creating math object is also quite confusing in TypeScript:
import { create, all, factory } from 'mathjs';
const mathjs = create(all);
mathjs!.import!([ ... ]);