dan jika ya, apa sintaksnya? Tujuan saya adalah menambahkan 's' pada kata 'comment' jika ada lebih dari satu. di template jQuery.ejs di aplikasi JMVC. Istirahat berikut. Saya tidak dapat menemukan dokumen apa pun untuk persyaratan ...
<%=commentsNumber%> comment<% if (commentsNumber > 1) { %> s <% } %>
conditional-statements
ejs
Regis Zaleman
sumber
sumber
Jawaban:
Untuk orang lain yang tersandung dalam hal ini, Anda juga dapat menggunakan ejs params / props dalam pernyataan bersyarat:
File recipes.js:
Recipes.ejs File:
sumber
include
pernyataan, menulis kondisional sebaris? Artinya tulisan tersebut<% if (true) { include foo/bar } %>
tampaknya error. Apakah ada metode yang sama atau apakah perlu untuk keluarinclude
oleh<% %>
.Persyaratan berfungsi jika terstruktur dengan benar, saya mengalami masalah ini dan mengetahuinya.
Untuk conditional, tag sebelum
else
harus dipasangkan dengan tag akhir sebelumnyaif
jika laporan akan mengevaluasi secara terpisah dan menghasilkan kesalahan.KESALAHAN!
Benar
semoga ini membantu.
sumber
else
di baris yang berbeda seperti blok kode pertama yang Anda sebutkan. Terima kasih banyak telah menyertakan contoh ini !!EJS tampaknya berperilaku berbeda bergantung pada apakah Anda menggunakan {} notasi atau tidak:
Saya telah memeriksa dan kondisi berikut dievaluasi seperti yang Anda harapkan:
sementara yang ini tidak:
sumber
Ya, Anda dapat menggunakan pernyataan bersyarat dengan EJS seperti if else, operator ternary atau bahkan switch case juga
Sebagai contoh
Operator terner :
<%- role == 'Admin' ? 'Super Admin' : role == 'subAdmin' ? 'Sub Admin' : role %>
Ganti Kasus
sumber
Anda juga dapat menggunakan
else if
sintaks:sumber
Saya tahu ini adalah jawaban yang agak terlambat,
Anda dapat menggunakan pernyataan if dan else di ejs sebagai berikut
Tapi ada hal lain yang ingin saya tekankan adalah jika Anda menggunakan kode dengan cara ini,
Ini akan menghasilkan kesalahan.
Semoga ini bisa membantu seseorang
sumber