У меня модель Location, отношение к себе.
class Location extends Model<Location> {
...
@BelongsTo(() => Location, "countryId")
public country?: Location;
@BelongsTo(() => Location, "stateId")
public state?: Location;
@HasMany(() => Location, "countryId")
public states?: Location[];
@HasMany(() => Location, "stateId")
public regions?: Location[];
@HasMany(() => Location, "regionId")
public places?: Location[];
...
}
Итак, в основном counties имеет много states, много regions и т.д. Я бы хотел реализовать это как GraphQLType.
Что я пробовал:
const LocationType = new GraphQLObjectType({
name: "LocationType",
fields: () => ({
...
states: {type: new GraphQLList(LocationType)},
...
}),
});
Я получаю ошибку
'LocationType' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer.






Вам просто нужно указать тип LocationType для GraphQLObjectType.
Что-то вроде этого:
const LocationType: GraphQLObjectType = new GraphQLObjectType({
name: "LocationType",
fields: () => ({
...
states: {type: new GraphQLList(LocationType)},
...
}),
});