0

私が現在取り組んでいるプロジェクトでは、フォームの送信などを表す Web モデルがいくつかあります。たとえば、ログイン フォーム (かなり悪い例) は次のとおりです。

var revalidator = require('revalidator'); // A node.js module for validation

LoginForm = function(email, password) {
    this.Email = email;
    this.Password = password;
};

LoginForm.prototype.validate = function() {
  return revalidator.validate(this, {
    properties: {
        Email: {
          description: 'The email address provided is not valid',
          type: 'string',
          format: 'email',
          required: true
        },
        Password: {
          description: 'The password is not provided',
          type: 'string',
          required: true
        }
      }
  })
};

exports.LoginForm = LoginForm;

これは、現在の node.js セットアップで現在うまく機能していますが、クライアント側の JavaScript コードでこれらのモデルを再利用できる方法があるかどうか疑問に思っていました。どんな助けでも本当に感謝しています。

4

1 に答える 1

2

Javascript は Javascript であり、コードを共有できます。ブラウザと Node.js にはいくつかの違いがあることに注意してください。コードを共有したい場合は、require を使用してはならず、使用する前にエクスポート オブジェクトが存在するかどうかを確認する必要があります。

if(typeof exports === 'object'){
    exports.LoginForm = LoginForm;
} else {
    // your browser export
}
于 2013-01-31T16:17:40.657 に答える