2013-05-22 2 views
5

Ich versuche, eine JSP-Seite zu generieren, und da die Vorlage Trennzeichen von JSP verwendet werden die gleichen wie die von Unterstreichung verwendet.Gruntjs Unterstreichungsvorlage Trennzeichen ändern

Blick auf die docs ->https://github.com/gruntjs/grunt/wiki/grunt.template#wiki-grunt-template-setDelimiters ich sehen kann sie haben eine Funktion für diese

grunt.template.addDelimiters(name, opener, closer) 

Zwei Fragen:

  1. Wo würde ich diese Funktion aufrufen?
  2. Kann ich die Trennzeichen nur für eine grunt.template.process() ändern (ich habe mehr als eine, und für andere Nicht-JSP-Vorlagen sind die Standardtrennzeichen in Ordnung)?

Jede Hilfe wird geschätzt. Vielen Dank.

+0

haben Sie versucht ... die Zeichen zu entgehen, denn wenn es den Text verarbeitet, wird es gedruckt, wie Sie wollen? –

Antwort

7

aus der Dokumentation für grunt.template.process:

Die Standardvorlage Begrenzungszeichen sind <%%> aber wenn options.delimiters auf ein Trennzeichen festlegen Namen gesetzt ist, wird diese Vorlage delimiters stattdessen verwendet werden .

das würde bedeuten, dass Sie grunt.template.process mit dem Namen des Trennzeichens aufrufen können, das Sie zuvor hinzugefügt haben.

z.B. wenn Sie Quadrat-Klammer als Trennzeichen in einem Verarbeitungsschritt verwendet werden sollen, die die Arbeit tun sollen:

// first add the new delimiters which you want to use 
grunt.template.addDelimiters('square-brackets', '[', ']'); 

// and use it 
grunt.template.process(template, {delimiters: 'square-brackets'}); 

// and use it with the default delimiters (named 'config') 
grunt.template.process(template); 
+0

Sollte ich diesen Code in gruntFile.js oder wo auch immer behalten –

2

Ich habe genau das gleiche Problem. JSP verwendet <% =%> -Tags als Ersatz, die auch von grunt verwendet werden. eine Zeile hinzugefügt, die Standardeinstellung angelegt in „https://github.com/gruntjs/grunt/blob/master/lib/grunt/template.js

Das ist für mich gearbeitet zu überschreiben:

// REPLACE the default 'config' delimiters 
grunt.template.addDelimiters('config', '{%', '%}'); 

grunt.initConfig(
    { .... }); 

Der Begrenzer Name ‚config‘ genau übereinstimmen müssen.