8

Hier zu verwenden ist eine Richtlinie I erstellt:AngularJS: Richtlinie - strings Passing ohne Anführungszeichen

HTML:

<p-test something="'bla'"></p-test> 

JavaScript:

.directive('pTest', function() { 
    return { 
     scope: { 
      something: '=?' 
     }, 
     templateUrl: 'components/testTemplate.html', 
     controller: 'testController' 
    }; 
}); 

Ich mag würde in der Lage sein übergeben Sie 'bla' als String ohne '', wie folgt:

<p-test something="bla"></p-test> 

Ich weiß, dass es über den Attributparameter in Verbindung möglich ist, aber es ist in diesem Fall irrelevant (korrigiere mich, wenn ich falsch liege), da ich diese Parameter direkt an den Bereich übergebe.

Antwort

14

ich als String 'bla' in der Lage sein möchten passieren, ohne die '', in der folgenden Art und Weise:

Sie würden nur für Text benötigen Bindung (@) Bindung das, anstatt 2-Wege-Bindung.

und verwenden Sie die Interpolation, wenn Sie die Bereichseigenschaften binden möchten. das heißt beispielsweise, wenn bla eine Bereichsvariable, die eine Zeichenfolge ist dann nur tun:

<p-test something="{{bla}}"></p-test> 

Plnkr

+0

etwas Neues gelernt, danke. –

+1

Hatte 10 Minuten warten, um es zu tun, dann vergaß. Da gehst du. –

+0

Danke! Ich weiß, dass ich den In-Template-Elementen Werte geben kann! – Herman