0

我是超级账本作曲家和编写非常基本的代码的新手。我想创建一个 bna,用户可以在其中使用令牌进行交易。

我的 Model.cto 看起来像

namespace org.acme.remittance

participant Member identified by id {
o String id
o String name
o String mobile
o Double balance
}



transaction Transfer {
  --> Member from
  --> Member to
  o Double val
}

我的 logic.js 看起来像这样:

async function transfer1(transferNew) {

  transferNew.from.balance -= transferNew.val;
  transferNew.to.balance += transferNew.val;

   let participantregitsry = await getParticipantRegistry('namespace org.acme.remittance.Member');
  await participantregitsry.updateAll([transferNew.from, transferNew.to]);
 }

我能够成功触发交易,但余额没有更新。请帮助找出我的代码中的错误。提前致谢。

4

1 回答 1

0

我假设您在函数之前有装饰器 - 例如:

 /**
 * Track the trade of a commodity from one trader to another
 * @param {org.acme.remittance.Transfer} transferNew - the trade to be processed
 * @transaction
 */

然后你需要namespace从 getParticipantRegistry 行中删除这个词,例如

let participantregitsry = await getParticipantRegistry('org.acme.remittance.Member');

然后它应该按预期工作。

于 2018-05-03T15:59:21.987 回答