2016-08-22 10 views
0

XMLテンプレート・ファイルがあります。私はそれをコードに「回す」必要があります。いくつかのプロパティを追加し、親コンテナにプログラムで追加します。NaiveScript:テンプレート・ストリングではなくXMLファイルでビルダー・モジュールを使用する方法

XMLテンプレート(それが本当のアプリではるかに複雑だ、これは一例です):

<StackLayout id="{{ 'recipe_' + recipe_id }}"> 
    <Label text="{{ title }}"/> 
    <Label text="{{ description }}"/> 
    <Button text="Choose" onTap="onRecipeBtnTap"/> 
</StackLayout> 

コード:

let recipeCard = builder.parse("~/templates/recipe.xml") //<-- problem here 
let slide = new slide.Slide() 
slide.addChild(recipeCard) 
slidesContainer.add(slide) 

問題はビルダモジュールはXML文字列ではなく必要とすることです通り。だから、私は何とかxmlファイルを文字列に変換する必要があります。ここで何が最善のアプローチであるかアドバイスしてください。

答えて

1

[OK]を、それを行う方法を見つけました。ファイル・システム・モジュールを使用する必要があります。

let template = fs.File.fromPath(__dirname + '/templates/recipe.xml') 
let templateString = template.readTextSync() 
let recipeCard = builder.parse(templateString) 
0

あなたは"ui/builder"を使用し、単にそのload()メソッドを呼び出すと、読み込みたいXMLのパスと名前を渡すことができます。 thisを見てください。XMLの読み込み時に独自のコード(ts/js)が表示されています。詳細についてはdocumentationについて"ui/builder"を参照してください。

関連する問題