4

潜在的なn00bの質問ですが、Googleには簡潔な答えがありませんでした.一緒に修正しましょう.

私はうなり声から始めていますが、基本的なことで立ち往生しています。grunt-init が別のプロセスに移動されたことを発見しました。ドキュメントの断片化により、最初はこれが明確になりませんが、それはクールです。

私は現在、自分のサイトのルート ディレクトリにある独自の grunt-init テンプレートが必要であると判断しています (現時点では、~/.grunt-init ディレクトリに移動するまで)。私はうなり声0.3.17を使用しています

そして、grunt-init-jquery およびその他の初期化テンプレートを調べてみると、それらはすべて標準の初期化プロンプトを使用していることに気付きました。

クライアントに関連する情報を含むカスタム プロンプトを作成したいと考えています。おそらく、クライアントの電子メールやプロジェクト マネージャーの名前を追加します。

しかし、私の人生では、grunt-init内で呼び出すことができるカスタムプロンプトを作成する方法/保存する場所を理解することはできません.

どんな助けでも大歓迎

4

1 に答える 1

7

更新: 2012 年 2 月 8 日

その答えは、init.processコマンドの中にあるようです。

プロセスを開始して、入力のプロンプトを開始します。 init.process(オプション、プロンプト、完了)

    init.process({}, [
      // Prompt for these values
      init.prompt('name'),
      init.prompt('description'),
      init.prompt('version')
    ], function(err, props) {
      // All finished, do something with the properties
    });

prompts 引数はオブジェクトの配列です。新しいヘルパーを登録したり、プロンプトを拡張したりせずに、独自のヘルパーを追加できます。

カスタム プロンプトは次のように追加できます。

    init.process({}, [

        // Prompt for these values.
        {
          name: 'client_name',
          message: 'Who is the client contact?',
          default: 'Joe Smith', 
          validator: /^[\w\-\.]+$/,
          warning: 'Must be only letters, numbers, dashes, dots or underscores. (If this is not for a client, say HOUSE)'
        },
        {
          name: 'project_manager',
          message: 'Who is the project manager?',
          default: 'Me', 
          validator: /^[\w\-\.]+$/,
          warning: 'Must be only letters, numbers, dashes, dots or underscores.'
        }


    ], function(err, props) {
      // All finished, do something with the properties
    });
于 2013-02-07T21:44:46.540 に答える