Почему моя функция Sequelize / Typescript содержит сообщение «Два разных типа с этим именем существуют, но они не связаны».? - PullRequest
0 голосов
/ 17 сентября 2018

Я использую sequelize-typescript, и мой код:

import Promise from "bluebird";
import { IncomingCall } from '../models/IncomingCall';
export function incoming(requestBody: object): Promise<IncomingCall> {
  return IncomingCall.create({
    CallSid: requestBody.CallSid
  });
}

Но я получаю ошибку:

[ts]
Type 'Bluebird<import("/src/models/IncomingCall").IncomingCall>' is not assignable to type 'Bluebird<import("/src/models/IncomingCall").IncomingCall>'. Two different types with this name exist, but they are unrelated.
  Types of property 'then' are incompatible.

Мой IncomingCall:

import { Model, Column, Table, DataType } from "sequelize-typescript";

@Table
export class IncomingCall extends Model<IncomingCall> {

  @Column
  CallSid: string;

  @Column
  AccountSid: string;

  @Column(DataType.JSON)
  rawData: string;

}

Как мне заставить это работать должным образом?

Ответы [ 2 ]

0 голосов
/ 18 сентября 2018

Простое исправление должно было измениться на:

export function incoming(requestBody: object): Promise<any> {
0 голосов
/ 17 сентября 2018

export class IncomingCall extends Model<IncomingCall> кажется неправильным, поскольку вы присваиваете параметру типа тип, который не существует во время определения. Я думаю, что-то вроде export class IncomingCall extends Model<{ Callsid: string; AccountsId: string; rawData: string; }> лучше, или вы можете определить форму вашей модели в другом интерфейсе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...