Hyperledger fabric 如何发出在其他事务内部调用的事件

Hyperledger fabric 如何发出在其他事务内部调用的事件,hyperledger-fabric,hyperledger,hyperledger-composer,Hyperledger Fabric,Hyperledger,Hyperledger Composer,我试图在调用其他事务时发出事件。但我无法实现我的意图 我有以下代码: event TransactionAssetEvent { o BlastAsset eventAsset o String eventCalledFromTransaction } 在logic.js文件中,我有一个运行良好的函数: async function Transfer(transfer) { //Some logic with a asset object TransactionAss

我试图在调用其他事务时发出事件。但我无法实现我的意图

我有以下代码:

event TransactionAssetEvent {
  o BlastAsset eventAsset
  o String eventCalledFromTransaction
}
在logic.js文件中,我有一个运行良好的函数:

async function Transfer(transfer) {
    //Some logic with a asset object

    TransactionAssetEvent(asset, 'Transfer');

    return updateAsset(asset);
}

 /**
 * Emit a notification that a transaction has occurred
 * @param {Object} asset
 * @param {String} eventCalledFromTransaction
 * @transaction
 */
async function TransactionAssetEvent(asset, eventCalledFromTransaction) {
    const factory = getFactory();
    let event = factory.newEvent(org.test', 'TransactionAssetEvent');
    event.eventAsset = asset;
    event.eventCalledFromTransaction = eventCalledFromTransaction;
    emit(event);
}
但我有以下错误:

错误:t:事务处理函数TransactionAssetEvent必须有1个类型为Transaction的函数参数

如何成功地发出事件

我正在实施一个伟大的活动流程?或者我用了一种不好的方式使用事件


我寻找其他帖子,但我无法实现注释流

let event=factory.newEvent(org.test”,“TransactionAssetEvent”)

应该是

let event = factory.newEvent('namespace*', 'TransactionAssetEvent');

名称空间基本上是保存
事件TransactionAssetEvent
的文件的名称空间

例如,您的线路将是

let event = factory.newEvent('org.test.eventModelFile', 'TransactionAssetEvent');
另外,您在
factory.newEvent(org.test)、“TransactionasseteEvent”中遗漏了一个

它应该是
factory.newEvent('org.test','TransactionAssetEvent')
let event=factory.newEvent(org.test),“TransactionasseteEvent”)

应该是

let event = factory.newEvent('namespace*', 'TransactionAssetEvent');

名称空间基本上是保存
事件TransactionAssetEvent
的文件的名称空间

例如,您的线路将是

let event = factory.newEvent('org.test.eventModelFile', 'TransactionAssetEvent');
另外,您在
factory.newEvent(org.test)、“TransactionasseteEvent”中遗漏了一个
它应该是
factory.newEvent('org.test','TransactionAssetEvent')