问题标签 [smartcontracts]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ethereum - 处理事务时出现 VM 异常:气体不足
我正在使用 testrpc、web3 1.0 和solidity 来构建一个简单的Dapp,但是我总是遇到这个错误,我找不到问题所在。请帮忙。
我的 javascript 文件:
我的合同文件:
另外,我正在使用以下命令启动 testrpc:
testrpc --account="0xce2ddf7d4509856c2b7256d002c004db6e34eeb19b37cee04f7b493d2b89306d, 2000000000000000000000000000000"
任何帮助,将不胜感激。
hyperledger - 在链码中维护密钥以存储值(状态)的正确方法。?
链码基本上将数据存储在键值对(STATE)中。
如果我必须存储学生数据,我必须传递键值,例如 1001-{学生信息}。简单地说,我可以创建任意数量的学生。
但问题是如果学生想动态注册。要管理它,学生必须通过唯一的 studentId 或必须创建动态密钥。?
哪个是实现这个的正确方法。?
谁能帮我理解这个基本流程。?
谢谢
javascript - 以太坊智能合约自动交易——有可能吗?
我刚刚为 ICO 制作了智能合约,现在我需要实现以下功能:
1.用户向钱包发送了一定数量的ETH
2.用户获得一定数量的代币到他的钱包以换取自动发送的ETH
我对这一切都很陌生,所以我想知道 - 是否可以自动执行此操作(或仅在手动模式下?),如果不是使用智能合约本身,也许还有另一种方法可以做到这一点,比如获取事件和使用某种 API(例如 PHP 或 JS)从智能合约调用函数?如果可能的话,我什么时候可以找到有关此的一些信息?只找到了几个这样的问题,但没有答案。
这是合约代码(主要取自这里):
请原谅我可能的愚蠢和糟糕的英语:)
非常感谢。
ethereum - 使用 web3 部署智能合约时不支持同步请求
我正在尝试使用 Web3、Truffle 和 Testrpc 在本地部署智能合约。我使用 Truffle 编译了一个智能合约,并使用以下代码来提取 ABI 和字节码。在同一个脚本中,我正在尝试使用 web3.eth.contract.deploy 部署合同(在本文档中给出:https ://web3js.readthedocs.io/en/1.0/web3-eth-contract.html#deploy ) 但一直收到此错误:
我应该怎么做才能解决这个问题?
这是供参考的脚本:
console.log("完成");
ethereum - 为每笔交易创建新的合约地址是一种好习惯吗?
当有新数据并执行交易时创建新的合约地址是一种好习惯,还是在具有映射变量并且可以将数据添加到其中的单个合约实例地址上创建。无论哪种情况,哪个是数据检索的好选择?
例如 - 我见过 web3js,他们在区块链上创建了一个新的合约实例,并将数据存储在其变量中,然后根据合约地址获取数据。所以它就像创建多个对象来存储单个记录,尽管一个合约实例可以存储多个。另一方面,web3js 代码只创建了一个合约实例并将数据存储在映射变量中。
blockchain - 智能合约的机密性和隐私性
我想创建一个需要智能合约的应用程序,其中只有 2 方会知道 ETH 地址以及发送到那里以执行某些代码所需的金额。有可能这样做吗?
node.js - 如何在 Hyperledger Fabric sdk 节点中实现智能合约集成以进行数据验证
我尝试在 Fabric sdk 节点中实现智能合约集成以进行数据验证(与验证对等方的共识)。任何人都帮我找到最好的例子来帮助
提前致谢
blockchain - 以太坊待处理交易
我正在尝试发送交易。
INFO [08-25|21:14:21] Submitted transaction
fullhash=0xe1b58ddcb6d8c3f3a8308e0eb275f10c0c3b7bd8807cd24ff6a315a3917ab2a5 recipient=0x939f34bc9253a62927871c889bcf62f398d264a6 INFO [08-25|21:14:29] Submitted transaction
fullhash=0x33ca6bb00a70de13bd8b1fdec5d0a7995ad09a90e416ac8ab686fc650a324331 recipient=0x939f34bc9253a62927871c889bcf62f398d264a6 INFO [08-25|21:14: 57]更新挖矿线程threads=1 INFO [08-25|21:14:57]交易池价格阈值更新价格=18000000000 INFO [08-25|21:14:57]开始挖矿操作INFO [08-25|21 :14:57] 提交新的挖矿工作
数=1 txs=2 叔叔=0 elapsed=73.574ms
但是当我跑步时
我可以看到上面发送的交易列表所以我的问题是交易什么时候被挖掘?
PS-我在我的本地机器上运行它(私有区块链)
提前致谢 :)
javascript - 如何显示智能合约中的所有事件日志?
我能够返回交易哈希。
但是如何从智能合约返回的该交易中捕获所有事件日志?