WinJS: Tips zu Metro Apps mit Javascript und Html5

Es gibt einige Problem-Brocken im Zusammenhang mit  WinJS, über die man früher oder später stolpern kann. Ich werde hier nach und nach wichtige Facts hinzufügen.

Promise

Bevor man startet, muss man Promises verstehen. Ein guter Artikel findet man hier.

Single Page Application (SPA)

Es empfiehlt sich, ein WinJS Metro App als Single Page Application zu entwerfen. Beim Navigieren werden die Seiten in die default.html-Seite geladen. Dabei werden .css und .js Dateien geladen und nicht entladen. Deshalb ist es speziell für .css-Dateien wichtig, dass man nicht gleiche Klassennamen verwendet. Abhilfe findet man hier: http://kraigbrockschmidt.com/blog/?p=779

 

Controls in ListView-Items und FlipView-Items

Damit z.B. ein Button in einem ListViewItem den Click-Event erhält und nicht eine Navigation zur Detail-Seite erfolgt muss man dem Button die Klasse win-interactive hinzufügen! Also etwa:

<button class="win-interactive">In den Warenkorb</button>

Html-Text in Resourcen

In resources-Files kann man durchaus auch Html-Tags hinterlegen.  "HeroStep1": " <a href='http://www.jazzvinyl.ch/'>www.JazzVinyl.ch</a>." Das Binding der Resourcen erfolgt dann an das innerHTML-Property:

  <p data-win-res="{ innerHTML: 'HeroStep1' }">

 

 

Kommentar schreiben