Handlebars.js: So ändern Sie das Symbol {{ im Ausdruck als andere Symbole

Erstellt am 17. Sept. 2018  ·  3Kommentare  ·  Quelle: handlebars-lang/handlebars.js

Die aktuelle Vorlage ist JSX-Syntax, und alle { werden analysiert, was zu Fehlern und jeder Konfiguration führt, die das {-Symbol ersetzt
Im Dokument habe ich es nicht gefunden. Vielleicht war ich nicht vorsichtig genug.

 // such
 style={{ textAlign: 'right' }}

 render() {
    return (
      <Form
        className="ant-advanced-search-form"
        onSubmit={this.handleSearch}
      >
        <Row gutter={24}>{this.getFields()}</Row>
        <Row>
          <Col span={24} style={{ textAlign: 'right' }}>
            <Button type="primary" htmlType="submit">Search</Button>
            <Button style={{ marginLeft: 8 }} onClick={this.handleReset}>
              Clear
            </Button>
          </Col>
        </Row>
      </Form>
    );
  }

Hilfreichster Kommentar

Sie können {{ mit einem Backslash maskieren: \{{ , aber es gibt keine Möglichkeit, das Zeichen vollständig zu ändern

Alle 3 Kommentare

Wenn ich das richtig verstehe, möchten Sie, dass sich die Syntax von handlebars von {{expression}} zu einem anderen Tag ändert, wie [[expression]] oder sogar wie ^&expression&^ ?

Ich bin kein Mitwirkender an dem Projekt, aber es sieht so aus, als würde Lenker lex und yacc verwenden:

https://github.com/wycats/handlebars.js/blob/master/src/handlebars.l

Dies ist die Lex-Datei, sie wandelt Text in repräsentative Symbole zur Verwendung im Parser (yacc) um. Wenn Sie die für Lenker passenden Zeichen ändern möchten, müssen Sie die entsprechenden {{ - und }} -Instanzen in den regulären Ausdrücken durch Ihre bevorzugte Syntax ersetzen.

Ich bin mir nicht sicher, welche Syntax von lex und yacc dieses Projekt verwendet, aber sie sind sich im Allgemeinen ziemlich ähnlich. Ich denke, die gängigsten Implementierungen sind heutzutage flex und byacc

Wenn ich das richtig verstehe, möchten Sie, dass sich die Syntax von handlebars von {{expression}} zu einem anderen Tag ändert, wie [[expression]] oder sogar wie ^&expression&^ ?

Ich bin kein Mitwirkender an dem Projekt, aber es sieht so aus, als würde Lenker lex und yacc verwenden:

https://github.com/wycats/handlebars.js/blob/master/src/handlebars.l

Dies ist die Lex-Datei, sie wandelt Text in repräsentative Symbole zur Verwendung im Parser (yacc) um. Wenn Sie die für Lenker passenden Zeichen ändern möchten, müssen Sie die entsprechenden {{ - und }} -Instanzen in den regulären Ausdrücken durch Ihre bevorzugte Syntax ersetzen.

Ich bin mir nicht sicher, welche Syntax von lex und yacc dieses Projekt verwendet, aber sie sind sich im Allgemeinen ziemlich ähnlich. Ich denke, die gängigsten Implementierungen sind heutzutage flex und byacc

Ja, das bedeutet es. Wie Sie sagen, müssen Sie den Quellcode ändern, anstatt die externe Schnittstelle bereitzustellen.
Moustache bietet eine ähnliche Schnittstelle.
Bitte entschuldigen Sie meine schlechte englische Übersetzungssoftware.

Sie können {{ mit einem Backslash maskieren: \{{ , aber es gibt keine Möglichkeit, das Zeichen vollständig zu ändern

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen