cantik kemas betul?
<span><span><span><div</span> class<span>="movie-card"</span> id<span>="oceans-11"</span>></span> </span> <span><span><span><h1</span> class<span>="movie-title"</span>></span>Ocean's 11<span><span></h1</span>></span> </span> <span><span><span><img</span> src<span>="/img/oceans-11.png"</span> class<span>="movie-poster"</span>></span> </span> <span><span><span><ul</span> class<span>="genre-list"</span>></span> </span> <span><span><span><li</span>></span>Comedy<span><span></li</span>></span> </span> <span><span><span><li</span>></span>Thriller<span><span></li</span>></span> </span> <span><span><span></ul</span>></span> </span><span><span><span></div</span>></span></span>
Lihat contoh ini pada codepen
tetapi ia tidak berhenti di sini. Jade menyediakan kecenderungan khas untuk ID dan kelas, seterusnya memudahkan markup kami menggunakan notasi yang biasa:
div.movie-card#oceans-11 h1.movie-title Ocean's 11 img.movie-poster(src="/img/oceans-11.png") ul.genre-list li Comedy li Thriller
Lihat contoh ini pada codepen
Seperti yang anda lihat, Jade menggunakan sintaks yang sama seperti yang kita sudah biasa ketika menulis pemilih CSS, menjadikannya lebih mudah untuk melihat kelas.
Katakan anda mempunyai tag perenggan dan anda ingin meletakkan blok besar teks di dalamnya. Jade merawat perkataan pertama setiap baris sebagai tag html - jadi apa yang anda lakukan?
anda mungkin melihat tempoh yang tidak bersalah dalam contoh kod pertama dalam artikel ini. Menambah tempoh (berhenti penuh) selepas tag anda menunjukkan bahawa segala -galanya di dalam tag itu adalah teks dan jed berhenti merawat perkataan pertama pada setiap baris sebagai tag html.
div p How are you? p. I'm fine thank you. And you? I heard you fell into a lake? That's rather unfortunate. I hate it when my shoes get wet.
Lihat contoh ini pada codepen
dan hanya untuk pulang ke rumah, jika saya menghapuskan tempoh selepas tag P dalam contoh ini, HTML yang disusun akan merawat "I" dalam perkataan "I'm" sebagai tag pembukaan (dalam ini kes, ia akan menjadi tag).
Sekarang kita telah menutup asas -asas, mari kita mengintip beberapa ciri yang kuat yang akan menjadikan markup anda lebih pintar. Kami akan melihat ciri -ciri berikut dalam baki tutorial ini:
Jade dilaksanakan dengan JavaScript, jadi ia sangat mudah menggunakan JavaScript di Jade. Berikut adalah contoh.
- var x = 5; div ul - for (var i=1; i<=x; i++) { li Hello - }
Apa yang kita lakukan di sini?! Dengan memulakan garis dengan tanda hubung, kami menunjukkan kepada pengkompil Jade yang kami mahu mula menggunakan JavaScript dan ia hanya berfungsi seperti yang kami harapkan. Inilah yang anda dapat apabila anda menyusun kod Jade di atas ke HTML:
<span><span><span><div</span>></span> </span> <span><span><span><ul</span>></span> </span> <span><span><span><li</span>></span>Hello<span><span></li</span>></span> </span> <span><span><span><li</span>></span>Hello<span><span></li</span>></span> </span> <span><span><span><li</span>></span>Hello<span><span></li</span>></span> </span> <span><span><span><li</span>></span>Hello<span><span></li</span>></span> </span> <span><span><span><li</span>></span>Hello<span><span></li</span>></span> </span> <span><span><span></ul</span>></span> </span><span><span><span></div</span>></span></span>
Lihat contoh ini pada codepen
Kami menggunakan tanda hubung apabila kod itu tidak menambah output secara langsung. Jika kita mahu menggunakan JavaScript untuk mengeluarkan sesuatu di Jade, kita gunakan =. Mari tweak kod di atas untuk menunjukkan nombor siri.
- var x = 5; div ul - for (var i=1; i<=x; i++) { li= i + ". Hello" - }
dan voilà, kita kini mempunyai nombor siri:
<span><span><span><div</span>></span> </span> <span><span><span><ul</span>></span> </span> <span><span><span><li</span>></span>1. Hello<span><span></li</span>></span> </span> <span><span><span><li</span>></span>2. Hello<span><span></li</span>></span> </span> <span><span><span><li</span>></span>3. Hello<span><span></li</span>></span> </span> <span><span><span><li</span>></span>4. Hello<span><span></li</span>></span> </span> <span><span><span><li</span>></span>5. Hello<span><span></li</span>></span> </span> <span><span><span></ul</span>></span> </span><span><span><span></div</span>></span></span>
Lihat contoh ini pada codepen
Sudah tentu, dalam kes ini, senarai yang diperintahkan akan lebih sesuai, tetapi anda mendapat titik. Sekarang, jika anda bimbang tentang XSS dan HTML melarikan diri, baca dokumen untuk maklumat lanjut.
Jade menyediakan sintaks gelung yang sangat baik supaya anda tidak perlu menggunakan JavaScript. Mari kita gelung di atas array:
- var droids = ["R2D2", "C3PO", "BB8"]; div h1 Famous Droids from Star Wars for name in droids div.card h2= name
dan ini akan disusun seperti berikut:
<span><span><span><div</span>></span> </span> <span><span><span><h1</span>></span>Famous Droids from Star Wars<span><span></h1</span>></span> </span> <span><span><span><div</span> class<span>="card"</span>></span> </span> <span><span><span><h2</span>></span>R2D2<span><span></h2</span>></span> </span> <span><span><span></div</span>></span> </span> <span><span><span><div</span> class<span>="card"</span>></span> </span> <span><span><span><h2</span>></span>C3PO<span><span></h2</span>></span> </span> <span><span><span></div</span>></span> </span> <span><span><span><div</span> class<span>="card"</span>></span> </span> <span><span><span><h2</span>></span>BB8<span><span></h2</span>></span> </span> <span><span><span></div</span>></span> </span><span><span><span></div</span>></span></span>
Lihat contoh ini pada codepen
Anda boleh melangkah ke atas objek dan gunakan semasa gelung juga. Lihat dokumen untuk lebih.
Ia boleh menjengkelkan untuk mencampur JavaScript ke dalam teks seperti ini p = "Hi there," Profilename ". Bagaimana keadaan anda?". Adakah Jade mempunyai penyelesaian yang elegan untuk ini? Anda bertaruh.
<span><span><span><div</span> class<span>="movie-card"</span> id<span>="oceans-11"</span>></span> </span> <span><span><span><h1</span> class<span>="movie-title"</span>></span>Ocean's 11<span><span></h1</span>></span> </span> <span><span><span><img</span> src<span>="/img/oceans-11.png"</span> class<span>="movie-poster"</span>></span> </span> <span><span><span><ul</span> class<span>="genre-list"</span>></span> </span> <span><span><span><li</span>></span>Comedy<span><span></li</span>></span> </span> <span><span><span><li</span>></span>Thriller<span><span></li</span>></span> </span> <span><span><span></ul</span>></span> </span><span><span><span></div</span>></span></span>
Bukankah itu kemas?
Mixins
div.movie-card#oceans-11 h1.movie-title Ocean's 11 img.movie-poster(src="/img/oceans-11.png") ul.genre-list li Comedy li Thriller
div p How are you? p. I'm fine thank you. And you? I heard you fell into a lake? That's rather unfortunate. I hate it when my shoes get wet.
- var x = 5; div ul - for (var i=1; i<=x; i++) { li Hello - }
<span><span><span><div</span>></span> </span> <span><span><span><ul</span>></span> </span> <span><span><span><li</span>></span>Hello<span><span></li</span>></span> </span> <span><span><span><li</span>></span>Hello<span><span></li</span>></span> </span> <span><span><span><li</span>></span>Hello<span><span></li</span>></span> </span> <span><span><span><li</span>></span>Hello<span><span></li</span>></span> </span> <span><span><span><li</span>></span>Hello<span><span></li</span>></span> </span> <span><span><span></ul</span>></span> </span><span><span><span></div</span>></span></span>
- var x = 5; div ul - for (var i=1; i<=x; i++) { li= i + ". Hello" - }
<span><span><span><div</span>></span> </span> <span><span><span><ul</span>></span> </span> <span><span><span><li</span>></span>1. Hello<span><span></li</span>></span> </span> <span><span><span><li</span>></span>2. Hello<span><span></li</span>></span> </span> <span><span><span><li</span>></span>3. Hello<span><span></li</span>></span> </span> <span><span><span><li</span>></span>4. Hello<span><span></li</span>></span> </span> <span><span><span><li</span>></span>5. Hello<span><span></li</span>></span> </span> <span><span><span></ul</span>></span> </span><span><span><span></div</span>></span></span>
- var droids = ["R2D2", "C3PO", "BB8"]; div h1 Famous Droids from Star Wars for name in droids div.card h2= name
<span><span><span><div</span>></span> </span> <span><span><span><h1</span>></span>Famous Droids from Star Wars<span><span></h1</span>></span> </span> <span><span><span><div</span> class<span>="card"</span>></span> </span> <span><span><span><h2</span>></span>R2D2<span><span></h2</span>></span> </span> <span><span><span></div</span>></span> </span> <span><span><span><div</span> class<span>="card"</span>></span> </span> <span><span><span><h2</span>></span>C3PO<span><span></h2</span>></span> </span> <span><span><span></div</span>></span> </span> <span><span><span><div</span> class<span>="card"</span>></span> </span> <span><span><span><h2</span>></span>BB8<span><span></h2</span>></span> </span> <span><span><span></div</span>></span> </span><span><span><span></div</span>></span></span>
- var profileName = "Danny Ocean"; div p Hi there, #{profileName}. How are you doing?
Kesimpulan
Nota penting: Seperti yang anda ketahui, Jade telah dinamakan semula kepada Pug kerana tuntutan tanda dagangan perisian. Pada masa akan datang, artikel mengenai Jade akan menggunakan nama baru "Pug" atau "Pugjs".
Bagaimana saya menukar html ke jade? . Untuk melakukannya secara manual, anda perlu memahami sintaks Jade dan bagaimana ia memetakan ke HTML. Sebagai contoh, tag HTML menjadi elemen jed, atribut HTML menjadi atribut Jade, dan sebagainya. Alat dalam talian boleh mengautomasikan proses ini, tetapi masih penting untuk memahami peraturan penukaran yang mendasari.
Komen di Jade boleh ditambah menggunakan //. Sebagai contoh, // ini adalah komen akan menambah komen pada kod jed anda. Perhatikan bahawa komen ini tidak akan dimasukkan ke dalam HTML yang diberikan. Sebagai contoh, p ini adalah beberapa teks yang akan menjadi
Ini adalah beberapa teks
dalam HTML. Anda juga boleh menggunakan sintaks Markdown di Jade dengan mengutamakan teks anda dengan: markdown.Atas ialah kandungan terperinci Tutorial jed untuk pemula. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!