問題タブ [truffle]
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コントラクトのスローを処理するためのパターンは何ですか?
スローを行うSolidityコントラクトの関数があります。例えば。
Truffle 環境には、次のようなテスト js があります。
return contract.do() により、スローが発生する条件が発生します。これにより、このテストのTruffle テスト出力で次が生成されます。
このようなテストでコントラクト関数からのスローを処理するためのイディオムは何ですか? スローは正しい動作です。
ethereum - イーサリアムのコントラクト機能はセキュアですか?
私はtestrpcとweb3を使用しています。
以下のイディオムを使用して、以前に定義されたユーザーのみが何かを実行できるようにしました。
次のように、web3 でインスタンス化されたコントラクトで関数を呼び出す場合:
出来た。最初は満足しましたが、web3 API では秘密鍵などのパスフレーズを提供する必要がないことに気付きました。
誰かの公開鍵/アドレスの簡単な知識を持つ人は誰でもこの関数を呼び出すことができますか?
例でこのイディオムを使用することで、Ethereum コントラクトの利点は、msg.sender が暗号的に保証されることであると信じるようになりました。
ethereum - Truffle MetaCoin の例が期待どおりに機能しない
testrpc
で作成した初期プロジェクトの 2 つのインスタンスを実行していますtruffle init
。そして、それらは両方とも同じ に接続しtestrpc
ます。
1. 住所を記入しamount
ないと、現在の残高から金額が差し引かれます。account[0]
同じIDを使用している他のインスタンスにも同じ残高が表示されると思います。しかし、そうではありません。10000
そこにイニシャルが表示されますが、実際の残高はtestrpc
? ここで私は何をしていますか/間違っていると思いますか?
2.MetaCoins
からに転送しようとするaccount[0]
とaccount[1]
(または、ID を入力して)、app.js
インスタンスの 1 つで を変更しaccount[1]
、実行truffle build
して更新すると、残高は のまま0
です。
3. 上記の 2 つを同じインスタンス/デバイスで試すと、うまくいきますか?
ここで基本的なことを誤解しているか、どこかにバグがあると思われます。
は端末でtestrpc
を受信してeth_sendTransaction
いますが、いずれかのインスタンスがトランザクションを実行すると..
truffle - truffle デプロイ コマンドのエラー
スマート コントラクトをプライベート ネットワークにデプロイしたいと考えています。
私はこのようにネットワークを開始します
geth --datadir="~/truffle" --port 30303 --rpc --rpcport 8545 --rpcaddr localhost --networkid 27441 --rpccorsdomain="*" --minerthreads "1" --mine --rpcapi "eth ,web3" --maxpeers 4 --unlock=0
次に、「truffle deploy」を実行すると、次のメッセージが表示されます。
SimpleStorage のデプロイ中にエラーが発生しました:
アカウントが存在しないか、アカウントの残高が少なすぎます 展開に失敗しました。
上記を参照。"
これについていくつかのアイデアを教えてください。
npm - インストール後に Truffle コマンドが見つからない
npm
次の方法でトリュフをインストールしました。
sudo npm install -g トリュフ
しかし、コンソールでトリュフリストを実行すると、
bash: トリュフ: コマンドが見つかりません
javascript - 特定の行の後に Javascript 関数が実行されない
現在、Truffle と testrpc を使用して Ethereum 用の Dapp を作成しています。登録ページには、すべての情報を入力してユーザーを登録するためのボタンがあります。ただし、ボタンがクリックされると、app.js javascript ファイル内の登録関数が呼び出されますが、実行されませんvar regi = Register.deployed();
。以下に示すように、Web ページのコンソールにエラーが表示されます。これを何時間もデバッグしようとしましたが、成功しませんでした。
これは app.js ファイルです。レジスタ関数は、入力されたデータを受け取り、それをレジスタ コントラクトに送信する関数です。
その下のコードは index.html ファイルです。タグは、クリックされた<button id="confirmsignup" onclick="register()">Sign Up</button>
ときに app.js で register() を呼び出すボタンです。
最後の 1 つは、ユーザーのアカウントを設定する Contract Register のコードです。
javascript 行 Register.deployed() の後にコードが実行されない理由がわかりません。私を正しい方向に導く可能性のある助けは役に立ちます。どうもありがとう!