2017-06-12 29 views
0

alpacajs.orgが提供するドキュメントに従って、optionsSource、schemaSource、viewSource、dataSourceなどのプロパティを使用して外部jsonファイルをロードするためのalpacajsを使用して単純なフォームを作成しました。私たちのアプリケーションに。しかし、私が必要とするのは、これらすべてのために1つのjsonファイルのみを使用する必要があるということです。私はこれらの3つの異なるプロパティをすべて使用する代わりに、バックエンドから来る単一のjsonファイルをロードするために1つのパラメータしか使用できないことを意味します。 ..だからここに私はロードJSONデータのため、これらのURLを使用している上記のコードでは...以下alpacajsで単一のjsonファイルを使用する方法

"dataSource": "/fulfiller/connector-custom-data.json" 
"schemaSource": "/fulfiller/connector-custom-schema.json" 
"optionsSource": "/fulfiller/connector-custom-options.json" 
"viewSource": "/fulfiller/connector-custom-view.json" 

<html> 
    <head> 
    <meta charset="UTF-8"> 
    <title>My Little Alpaca Form</title> 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/handlebars.js/4.0.5/handlebars.min.js"> </script> 
    <script src="https://code.jquery.com/jquery-1.12.4.min.js" integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ=" crossorigin="anonymous"></script> 
    <script src="//code.cloudcms.com/alpaca/1.5.22/bootstrap/alpaca.min.js"></script> 
    <!-- typeahead.js https://github.com/twitter/typeahead.js --> 
     <script src="https://cdnjs.cloudflare.com/ajax/libs/typeahead.js/0.10.5/bloodhound.min.js"></script> 
     <script src="https://cdnjs.cloudflare.com/ajax/libs/typeahead.js/0.10.5/typeahead.bundle.min.js"></script> 
    <link href="//code.cloudcms.com/alpaca/1.5.22/bootstrap/alpaca.min.css" rel="stylesheet" /> 
    <link type="text/css" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css" rel="stylesheet"/> 
</head> 
    <body> 
     <div id="form1"></div> 
     <script type="text/javascript"> 
      $(document).ready(function() { 
       $("#form1").alpaca({ 
    "dataSource": "/fulfiller/connector-custom-data.json", 
    "schemaSource": "/fulfiller/connector-custom-schema.json", 
    "optionsSource": "/fulfiller/connector-custom-options.json", 
    "viewSource": "/fulfiller/connector-custom-view.json", 
    "view": { 
     "parent": "bootstrap-edit", 
     "layout": { 
      "template": "threeColumnGridLayout", 
      "bindings": { 
       "requestedfor": "column-1", 
       "location": "column-2", 
       "shortdescription": "column-3", 
       "description": "column-3", 

      } 
     }, 
     "templates": { 
      "threeColumnGridLayout": '<div class="row">' + '{{#if options.label}}<h2>{{options.label}}</h2><span></span>{{/if}}' + '{{#if options.helper}}<p>{{options.helper}}</p>{{/if}}' + '<div id="column-1" class="col-md-6"> </div>' + '<div id="column-2" class="col-md-6"> </div>' + '<div id="column-3" class="col-md-12"> </div>' + '<div class="clear"></div>' + '</div>' 
     } 



    }, 
    "options": { 
     "fields": { 
     "requestedfor": { 
      "type": "text", 
      "id": "requestedfor", 
      "label": "*Requested For", 
      "typeahead": { 
       "config": {}, 
       "datasets": { 
        "type": "remote", 
        "displayKey": "value", 
        "templates": {}, 
        "source": "http://www.alpacajs.org/data/tokenfield-ajax1.json" 
       } 
      } 
     }, 
     "location": { 
      "type": "text", 
      "label": "*Location" 
     }, 

    "shortdescription": { 
      "type": "text", 
      "label": "Short Description" 
     }, 

    "description": { 
      "type": "textarea", 
      "rows": 5, 
      "cols": 40, 
      "label": "Description"    

     } 


    }, 


    "form": { 
      "attributes": { 
       "action": "#", 
       "method": "post" 
      }, 
      "buttons": { 
       "submit": { 
        "value": "Submit", 
        "class": "btn btn-default" 
       } 
      } 
     } 


}  

}); 
}); 
     </script> 
    </body> 
</html> 

を私のコードをチェックするので、代わりに、これらの3つの異なった性質を利用して、私がのみを使用することができますしてください"oneSingleJSONSource"のような1つのプロパティ: "oneJSONRemoteFile.json"

誰でも入力を提供できますか?

答えて

0

Alpacaを初期化するためには、Alphaが既にそのコアコードで知っていたスキーマ、オプション、その他のプロパティを含むDOM要素+設定オブジェクトを持っている必要があります。アルパカのコアコード...あなたの目的がリソースの負荷を最適化するだけであれば、すべての設定を含む1つのjsonファイルを使用し、アルファベットの初期化$(dom).alpaca(_json_data_from_loaded_file)に入力することができます。また、スキーマ、オプション、およびビューの設定のみをファイルに保存する場合は、3つのオブジェクト、1つはスキーマ、1つはオプション、もう1つはビューの設定に分けてください。

これについてもっと詳しく知りたい場合は教えてください。 私は喜んで助けます。

+0

詳細を教えてください。 – alibenmessaoud

関連する問題