小编Ale*_*son的帖子

从新创建的帐户中使用 web3 调用合约方法

我需要在以太坊中调用合约中的方法,而不使用 MetaMask。我使用 Infura API 并尝试从最近使用 web3.eth.create() 方法创建的帐户调用我的方法。该方法返回如下对象:

{
    address: "0xb8CE9ab6943e0eCED004cG5834Hfn7d",
    privateKey: "0x348ce564d427a3311b6536bbcff9390d69395b06ed6",
    signTransaction: function(tx){...},
    sign: function(data){...},
    encrypt: function(password){...}
} 
Run Code Online (Sandbox Code Playgroud)

我还使用 infura 提供商:

 const web3 = new Web3(new Web3.providers.HttpProvider(
    "https://rinkeby.infura.io/5555666777888"
  ))
Run Code Online (Sandbox Code Playgroud)

所以,当我尝试这样写时:

contract.methods.contribute().send({
          from: '0xb8CE9ab6943e0eCED004cG5834Hfn7d', // here I paste recently created address
          value: web3.utils.toWei("0.5", "ether")
        });
Run Code Online (Sandbox Code Playgroud)

我有这个错误:

错误:给定选项和默认选项中均未指定“发件人”地址。

如果我把它写在选项中怎么可能不是来自地址from

PS 使用 Metamask 我的应用程序运行良好。但是当我从 MetaMask 注销并尝试创建新帐户并使用它时,我遇到了这个问题。

ethereum metamask

5
推荐指数
1
解决办法
3177
查看次数

VueJS 项目中正确的 MaterializeCSS 初始化

我尝试在使用 npm ( )创建的 VueJS 项目中不使用 jQuery初始化 MaterializeCSS 框架vue init webpack projectname

从版本1.0.0-rc.2Materialize 开始支持它自己的初始化而不使用 jQuery,就像这样:

  document.addEventListener('DOMContentLoaded', function() {
    var elems = document.querySelectorAll('.collapsible');
    var instances = M.Collapsible.init(elems, options);
  });
Run Code Online (Sandbox Code Playgroud)

但是通过这种方式,JS Materialize Components 仅在手动页面重新加载后工作,并且当我打开某个组件并返回带有 Materialize 内容的组件时 - 它不起作用 - 我需要一直手动重新加载页面。

那么如何以正确的方式初始化 JS 组件呢?

materialize vue.js

3
推荐指数
1
解决办法
2991
查看次数

标签 统计

ethereum ×1

materialize ×1

metamask ×1

vue.js ×1