0

パッケージXolvio/meteor-cucumberを使用しており、フィクスチャ メソッドを呼び出して、その戻り値をステップ定義で使用しようとしています。

ステップ:

そして、SMS コード「#smsCodeVerification」を入力します。

ステップ定義:

this.Then(/^I fill in the sms code "([^"]*)"$/, function (verificationField, callback) {
      var code = this.server.call('getSmsCodeForUser', "+467*******");
      console.log("step code: " + code);

      this.client
        .waitForExist(verificationField, 4000)
        .waitForVisible(verificationField, 2000)
        .setValue(verificationField, code)
        .call(callback);
    });

上記のコードは次を出力します。

ステップコード: [オブジェクト Promise]

サーバーメソッドは次のようになります。

'getSmsCodeForUser': function (tel) {
      var user = User.findOne({ phone: tel }),
        password = Password.findOne({ user: user._id }),
        code = parseInt(password.code);

      return code;
    }

ステップ定義のコンソール ログはサーバー メソッドが終了する前に実行され、サーバー メソッドからコールバックを取得する meteors の通常の方法を使用しても機能せず、undefined のみが返されます。

4

1 に答える 1

1
this.server.call('getSmsCodeForUser', "+467*******").then(function(resopnse) {

    // you can use the response here

});
于 2015-07-10T08:26:23.750 に答える