Seperti yang Anda ketahui, sudut dan ranting memiliki konstruksi kontrol yang sama - kawat gigi keriting ganda. Bagaimana saya bisa mengubah nilai default Angular?
Saya tahu saya bisa melakukannya di Twig, tetapi di beberapa proyek saya tidak bisa, hanya JS.
verbatim
tag; misalnya:{% verbatim %}{{ angular_var }}{% endverbatim %}
untuk menjaga kumis Anda untuk AngularJS: twig.sensiolabs.org/doc/tags/verbatim.htmlJawaban:
Anda dapat mengubah tag interpolasi mulai dan berakhir menggunakan
interpolateProvider
layanan. Satu tempat yang nyaman untuk ini adalah pada saat inisialisasi modul.https://docs.angularjs.org/api/ng/provider/$interpolateProvider
sumber
[[myObject[myArray[index]]
{[{}]}
Django meskipun agak aneh untuk mengetik. Saya telah memperbarui jawabannya.Pertanyaan ini muncul dijawab, tetapi solusi yang lebih elegan yang belum disebutkan adalah dengan hanya melampirkan kurung kurawal di tanda kutip antara kurung kurawal, seperti:
Jika Anda menggunakan variabel untuk konten, lakukan ini sebagai gantinya:
Anda harus menggunakan tanda kutip tunggal , bukan tanda kutip ganda. Kutipan ganda memungkinkan interpolasi string oleh Twig sehingga Anda harus lebih berhati-hati dengan konten, terutama jika Anda menggunakan ekspresi.
Jika Anda masih benci melihat semua kurung kurawal itu, Anda juga dapat membuat makro sederhana untuk mengotomatiskan proses:
Simpan sebagai file dan impor ke template Anda. Saya menggunakan
ng
nama itu karena pendek dan manis.Atau Anda dapat meletakkan makro di bagian atas template Anda dan mengimpornya sebagai _self (lihat di sini) :
Kemudian gunakan sebagai berikut:
Output ini:
... dan tindak lanjut bagi mereka yang menggunakan MtHaml bersama Twig. MtHaml memungkinkan penggunaan curlies AngularJS dengan cara biasa karena kode Ranting apa pun diakses - dan = alih-alih {{}}. Sebagai contoh:
HTML Biasa + AngularJS:
MtHaml + AngularJS:
MtHaml + AngularJS dengan Twig gaya MtHaml:
sumber
{{'{{contact.name}\}'}}
yang mencetak{{contact.name}}
seperti yang saya inginkanSeperti disebutkan dalam pertanyaan serupa tentang Django dan AngularJS, trik dengan mengubah simbol default (dalam Twig atau AngularJS) dapat memberikan ketidakcocokan dengan perangkat lunak pihak ketiga, yang akan menggunakan simbol-simbol ini. Jadi saran terbaik yang saya temukan di google: https://groups.google.com/d/msg/symfony2/kyebufz4M00/8VhF1KWsSAEJ
Tag diubah namanya menjadi kata demi kata
sumber
Anda juga dapat menggunakan arahan berbasis atribut
<p ng-bind="yourText"></p>
sama dengan<p>{{yourText}}</p>
sumber
<li id={{item.id}}></li>
?<p data-ng-bind="yourText"></p>
untuk membuat HTML validAnda dapat menggunakan
\{{product.name}}
untuk membuat ekspresi diabaikan oleh Setang dan digunakan oleh Angular sebagai gantinya.sumber
Ini adalah versi kompilasi dari jawaban terbaik dan contoh untuk blok kata demi kata:
Untuk insersi tunggal, gunakan:
atau jika Anda menggunakan variabel ranting
Verbatim , sangat elegan dan mudah dibaca untuk beberapa variabel sudut:
sumber
Jika Anda tidak tertarik untuk mengubah tag template dari sintaks sudut yang ada yang akan memerlukan beberapa penulisan ulang yang membingungkan dari template sudut yang ada.
Satu cukup menggunakan tag ranting template dengan tag sudut seperti:
Menemukan ini pada jawaban utas yang serupa : Angular pada aplikasi symfony2
sumber
Atau Anda dapat mengubah karakter yang digunakan oleh Twig. Ini dikendalikan oleh Twig_Lexer .
sumber
Menurut posting ini Anda harus dapat melakukannya seperti ini:
sumber
Saya suka @pabloRN, tapi saya lebih suka menggunakan span daripada p, karena bagi saya p akan menambahkan baris ke hasilnya.
Saya akan menggunakan ini:
Saya juga menggunakan Teks dengan kursor di dalam tanda kutip ganda sehingga saya tidak perlu menulis ulang semuanya berulang kali.
sumber
<span>
digunakan untuk teks sebaris saat Anda memiliki konten lain. Misalnya:<h1>Welcome <span ng-bind="yourName"></span></h1>
Anda dapat membuat fungsi dalam ranting untuk mengelilingi arahan sudut Anda, jadi seperti bukannya ...
{{"angular"}}
kamu pergi ...
{{angular_parser("angular stuff here output curlies around it")}}
sumber