1

ドキュメントを読んでサンプルを評価していると、スマート コントラクトの 2 種類の関数であるビュー メソッドと変更メソッドを発見しました。

// ビュー メソッドは読み取り専用です。それらは状態を変更しませんが、通常は何らかの値を返します。

// Change メソッドは状態を変更できます。ただし、呼び出されたときに戻り値を受け取りません。

https://docs.nearprotocol.com/hackathon/hackathon-startup-guide-10-minから

それらの要件はどのくらい厳しいですか? これらの仮定が守られていない場合 (たとえば、状態がビュー メソッド内で変更されるか、変更メソッド内で変更が行われない場合) はどうなりますか?

4

2 に答える 2

1

berryguy が言っnear viewたように、関数が状態を変更しようとすると失敗します。ただし、ここで提案したように、https://github.com/nearprotocol/NEPs/pull/3#discussion_r306526647制限は人為的なものであり、削除する必要があります。複数の優れた使用法があるため、ユーザーが任意の関数を実行できるようにしnear view、ドライランとして扱う必要があります。

  • ユーザーは関数をドライランして、消費するガスの量を見積もることができます。

  • ユーザーは、コントラクトの現在の状態で関数がどのように動作するかを確認するために予行演習を行うことができます。
于 2019-09-15T22:22:35.907 に答える