Typescript Hyperledger类型错误:未定义的类扩展值不是函数或null

Typescript Hyperledger类型错误:未定义的类扩展值不是函数或null,typescript,hyperledger-fabric,Typescript,Hyperledger Fabric,当我尝试为Hyperledger结构实例化chaincode时,出现以下错误 TypeError: Class extends value undefined is not a constructor or null at Object.<anonymous> (/home/dev/Documents/drc-api/dist/src/hyperledger/models/document.js:4:32) at Module._compile (module.js:

当我尝试为Hyperledger结构实例化chaincode时,出现以下错误

TypeError: Class extends value undefined is not a constructor or null
    at Object.<anonymous> (/home/dev/Documents/drc-api/dist/src/hyperledger/models/document.js:4:32)
    at Module._compile (module.js:653:30)
    at Object.Module._extensions..js (module.js:664:10)
    at Module.load (module.js:566:32)
    at tryModuleLoad (module.js:506:12)
    at Function.Module._load (module.js:498:3)
    at Module.require (module.js:597:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/home/dev/Documents/drc-api/dist/src/hyperledger/drcContract.js:4:20)
    at Module._compile (module.js:653:30)
document.ts

import { Contract, Context } from 'fabric-contract-api';
import {Document} from './models/document'
import {Case} from './models/case'    
import {DocumentList} from './lists/documentList'    
import {CaseList} from './lists/caseList'    
import {Log, Action} from './models/log'    
import { Timestamp } from 'google-protobuf/google/protobuf/timestamp_pb';

class DRCContext extends Context {
    /* functions */
}

export class DRCContract extends Contract {
    /* functions */
}
module.exports = DRCContract;
import {State} from '../hyperledger-state/state';
import {Log} from './log';
import {Timestamp} from "google-protobuf/google/protobuf/timestamp_pb";

export class Document extends State {
    constructor() {
        super();
    }

    /* Getters & Setters */    
}    
export default Document;    
module.exports = Document;
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const fabric_contract_api_1 = require("fabric-contract-api");
const document_1 = require("./models/document");
const case_1 = require("./models/case");
const documentList_1 = require("./lists/documentList");
const caseList_1 = require("./lists/caseList");
const log_1 = require("./models/log");
const timestamp_pb_1 = require("google-protobuf/google/protobuf/timestamp_pb");
class DRCContext extends fabric_contract_api_1.Context {
    constructor() {
        super();
    }

    /* functions */
}
class DRCContract extends fabric_contract_api_1.Contract {
    constructor() {
        super();
    }

    /* functions */
}
exports.DRCContract = DRCContract;
module.exports = DRCContract;
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const state_1 = require("../hyperledger-state/state");
class Document extends state_1.State {
    constructor() {
        super();
    }
    /* Getters & Setters */
}
exports.Document = Document;
exports.default = Document;
module.exports = Document;
drcContract.js

import { Contract, Context } from 'fabric-contract-api';
import {Document} from './models/document'
import {Case} from './models/case'    
import {DocumentList} from './lists/documentList'    
import {CaseList} from './lists/caseList'    
import {Log, Action} from './models/log'    
import { Timestamp } from 'google-protobuf/google/protobuf/timestamp_pb';

class DRCContext extends Context {
    /* functions */
}

export class DRCContract extends Contract {
    /* functions */
}
module.exports = DRCContract;
import {State} from '../hyperledger-state/state';
import {Log} from './log';
import {Timestamp} from "google-protobuf/google/protobuf/timestamp_pb";

export class Document extends State {
    constructor() {
        super();
    }

    /* Getters & Setters */    
}    
export default Document;    
module.exports = Document;
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const fabric_contract_api_1 = require("fabric-contract-api");
const document_1 = require("./models/document");
const case_1 = require("./models/case");
const documentList_1 = require("./lists/documentList");
const caseList_1 = require("./lists/caseList");
const log_1 = require("./models/log");
const timestamp_pb_1 = require("google-protobuf/google/protobuf/timestamp_pb");
class DRCContext extends fabric_contract_api_1.Context {
    constructor() {
        super();
    }

    /* functions */
}
class DRCContract extends fabric_contract_api_1.Contract {
    constructor() {
        super();
    }

    /* functions */
}
exports.DRCContract = DRCContract;
module.exports = DRCContract;
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const state_1 = require("../hyperledger-state/state");
class Document extends state_1.State {
    constructor() {
        super();
    }
    /* Getters & Setters */
}
exports.Document = Document;
exports.default = Document;
module.exports = Document;
document.js

import { Contract, Context } from 'fabric-contract-api';
import {Document} from './models/document'
import {Case} from './models/case'    
import {DocumentList} from './lists/documentList'    
import {CaseList} from './lists/caseList'    
import {Log, Action} from './models/log'    
import { Timestamp } from 'google-protobuf/google/protobuf/timestamp_pb';

class DRCContext extends Context {
    /* functions */
}

export class DRCContract extends Contract {
    /* functions */
}
module.exports = DRCContract;
import {State} from '../hyperledger-state/state';
import {Log} from './log';
import {Timestamp} from "google-protobuf/google/protobuf/timestamp_pb";

export class Document extends State {
    constructor() {
        super();
    }

    /* Getters & Setters */    
}    
export default Document;    
module.exports = Document;
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const fabric_contract_api_1 = require("fabric-contract-api");
const document_1 = require("./models/document");
const case_1 = require("./models/case");
const documentList_1 = require("./lists/documentList");
const caseList_1 = require("./lists/caseList");
const log_1 = require("./models/log");
const timestamp_pb_1 = require("google-protobuf/google/protobuf/timestamp_pb");
class DRCContext extends fabric_contract_api_1.Context {
    constructor() {
        super();
    }

    /* functions */
}
class DRCContract extends fabric_contract_api_1.Contract {
    constructor() {
        super();
    }

    /* functions */
}
exports.DRCContract = DRCContract;
module.exports = DRCContract;
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const state_1 = require("../hyperledger-state/state");
class Document extends state_1.State {
    constructor() {
        super();
    }
    /* Getters & Setters */
}
exports.Document = Document;
exports.default = Document;
module.exports = Document;

错过一个出口?例如导出类DRCContexts Context{constructor(){//etc}//functions}//Main Contract导出类DRCContract extends Contract{constructor(){//etc}//functions}添加导出也不起作用,不幸的是,它仍然给出相同的错误。在使用fabric contract api时是否需要使用Typescript装饰程序?此文件的内容是什么/超级分类账状态/状态?您可能正在尝试导入状态,但状态尚未显式导出我正在导出状态。