Wie verwende ich vorkompilierte Vorlagen in Lenkern mit RequireJS?

Ich möchte meine Lenker-Vorlagen vorkompilieren, bin mir jedoch nicht sicher, wie dies im Entwicklungsmodus funktioniert.

Ist es üblich, einige Hintergrundprozesse wieBewachen wird ausgeführt, um Änderungen an Lenker-Vorlagendateien ständig zu überwachen?

Ich verwende RequireJS, um Vorlagen einzulesen. z.B.:

define(['jquery', 'handlebars', 'text!templates/my_template'], function($, Handlebars, myTemplate) {

  // ...

  var data = {"some": "data", "some_more": "data"};
  var templateFn = Handlebars.compile(myTemplate);
  $('#target').append(templateFn(data));

  // ...

});

Ich verstehe also, sobald Vorlagen vorkompiliert sind, würde man dies tun:

define(['jquery', 'handlebars'], function($, Handlebars) {

  // ...

  var data = {"some": "data", "some_more": "data"};
  var template = Handlebars.templates['my_template'];
  $('#target').append(template(data));

  // ...

});

Beachten Sie Folgendes zum Code-Snippet im zweiten:

Das RequireJS-Modul zieht die Vorlage nicht mehr ein.Handlebars.compile () wird nicht mehr verwendet.

In der Regel wird Guard ausgeführt, um meine Vorlagen zu kompilieren, wenn Änderungen an Vorlagendateien auf Dateisystemebene vorgenommen werden.

Grundsätzlich ist meine FrageIst die Absicht für Entwickler, dies zu tun?

if (development) {
  compile templates
}
else {
  use precompiled templates
}

Ich benutze auch Rails, also gibt es vielleicht etwas schwarze Magie wie Sass-Rails.

Antworten auf die Frage(3)

Ihre Antwort auf die Frage