问题标签 [solidity]
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 - 如何计算利息以太坊稳固性?
为了了解以太坊,我想编写一个简单的贷款合同。我为任何贷款添加了一些简单的属性,但我立即遇到了问题。
我使用什么类型的利率?查看solidity types documentation,原始类型包括布尔和多种整数。十进制数没有原语。
没有十进制数字,我如何计算利息?
ethereum - 以太坊调用从另一个合约发出事件的合约方法
我有一个合同,它调用另一个合同上的一个方法,这会导致它发出一个事件——我在一个节点进程中监听。
如果我执行直接触发事件的方法(从控制台) - 它会很好地触发。但是,如果我执行该方法,首先调用初始合约来依次调用触发事件的合约,则事件不会触发。
有没有一种方法可以调用我遗漏的合同,或者这是我设计无法做到的?以下代码描述了该问题:
ethereum - 来自 ethereum-web3 的 Event.watch 被无限次触发
我正在尝试松露 + web3 + ethereumjs-testrpc。在应用程序中,我有以下代码:
我在控制台中无休止地获取最新的传输。合约是标准的 MetaCoin,添加了一个事件 Transfer。这是完整的代码。
ethereum - 以太坊合约功能是否安全?
我正在使用 testrpc 和 web3。
我使用下面的成语来确保只有以前定义的用户才能做某事:
当使用 web3 在实例化合约上调用函数时,如下所示:
有效。起初我很高兴,但后来我意识到 web3 API 并没有要求我为私钥等提供任何密码。
对某人的公钥/地址有简单了解的人可以调用这个函数吗?
在示例中使用这个成语让我相信以太坊合约的一个好处是它确保 msg.sender 得到加密保证。
ethereum - 调用带参数的函数时如何获取返回值
我正在写下面的简单合同,该合同存储了每个 ID 的所有问卷结果。
可以成功调用和挖掘包含参数的函数“投票”,但是当我用 ID 调用“getNumResult”时,我无法在solidity-browser屏幕中获得状态消息“等待交易被挖掘...”的返回值已经通过“投票”功能注册。
如果有人会建议导致此问题的原因和解决方案以获取带参数的函数的返回值,我们将不胜感激。
javascript - 如何在javascript中使用以太坊合约的状态改变方法?
我正在研究以太坊智能合约。我通过 Mist 浏览器部署了我的 greeter 合约,它在 Mist 上运行良好。
所以我想使用我部署的欢迎合约来制作简单的 Dapp。
我在 Solidity 中的合约代码:
我的 Javascript 中的 Dapp 代码:
_greet() 函数运行良好,它返回我的问候信息。
但是 _changeMsg() 函数只返回一些十六进制字符串。如何通过 _changeMsg() 函数更改问候语?
谢谢你。
blockchain - 如何在 Solidity 中返回映射列表?(以太坊合约)
我想做一个简单的智能合约,它有一个列表,可以设置项目,并且可以获取列表。
坚固的代码:
我想让 getList() 返回列表,但返回类型不兼容。我怎样才能做到这一点?
ethereum - 如何确定以太坊地址是否为合约?
Solidity 中的地址可以是账户或合约(或其他事物,例如交易)。当我有一个变量 x,持有一个地址时,我如何测试它是否是合约?
(是的,我已经阅读了文档中关于类型的章节)
oop - 如何在 Solidity 中实现简单的 OOP?
代码:
编译错误
如何读取另一个合同的公共变量?
mappings - Solidity 中的多值映射
我需要能够在映射中的同一个键下有几个可能的值。今天,Solidity 的映射是单值的:写入一个值会覆盖前一个值(它仍在区块链中,但不能通过合约检索)。我编写了这段代码以获得多值映射:
从 geth 控制台使用它的一个例子:
我的方法有缺陷吗?还是更好的解决方案?