所以我试图创建数据结构,其中 byte32 映射到地址数组,每个地址映射到 uint。
我正在考虑以下方法,但似乎不太正确:
mapping (byte32 => mapping (address[] => uint))
如果可能的话,请帮我解决这个问题。如果问题描述不够清楚,请随时告诉我。
address示例:有一个属性,它映射到 Owners( ) (属性的所有者)数组,每个所有者都映射到uint他们在该属性中拥有的 Stake( )。
我使用 Node js 在 dynamodb 中创建了一个项目,该项目具有多个属性,例如品牌、类别、折扣、有效性等。我使用 uuid 为每个项目生成 id。现在假设我想更新项目的有效性属性,在这种情况下,我当前正在发送整个 json 对象,并将有效性的值修改为新值。
这绝对不是最优的,请帮我找到一个最优的解决方案。
const params = {
TableName: process.env.PRODUCT_TABLE,
Key: {
id: event.pathParameters.id,
},
ExpressionAttributeNames: {
'#discount': 'discount',
},
ExpressionAttributeValues: {
':brand': data.brand,
':category': data.category,
':discount': data.discount,
':denominations': data.denominations,
":validity": data.validity,
":redemption": data.redemption
},
UpdateExpression: 'SET #discount = :discount, denominations = :denominations, brand = :brand, category = :category, validity = :validity, redemption = :redemption',
ReturnValues: 'ALL_NEW',
};
Run Code Online (Sandbox Code Playgroud)
我只想发送我想用新值更新的属性,如果我想将有效期从 6 个月更改为 8 个月,我应该只发送如下内容:{“validity”:“8 个月”} 它应该更新项目的有效性属性。同样应该适用于项目的任何其他属性。
'use strict';
const AWS = require('aws-sdk');
const …Run Code Online (Sandbox Code Playgroud) 我理解thisjavascript中的关键字.我已经用它喜欢this.method()或this.variable =.但这是什么().请参阅以下代码:
static fromTX(tx, index) {
return new this().fromTX(tx, index);
}
Run Code Online (Sandbox Code Playgroud)
请帮助我理解在javascript和上面的代码示例中使用this().