javascript - Yeoman şablonda döngü
Bu JSON dosyasını almak için yeoman kullanmaya çalışıyorum:
{
"models": {
"user": {
"properties": [
{
"name": {
"type": "string"
},
"surname": {
"type": "string"
},
"id": "number"
}
]
}
}
}
Ve onu şöyle bir şeye dönüştür:
Class User {
name : string
surname : string
id : number
}
Şablonda bir tür döngü yapmak mümkün olur mu? Aklımdaki şey şudur...
export class <%= entityName %> extends Model {
<% forEach (property in props) { %>
<%= property.name %> : <% property.type %>;
<% } %>
}
Cevap #1
Şablon dili herhangi bir JS kodunu çalıştırabilir. Yani normal for döngüsü veya dizilerde yineleme yöntemlerini (arr.forEach()) kullanabilirsiniz.
export class <%= entityName %> extends Model {
<% for (property of props) { %>
<%= property.name %> : <% property.type %>;
<% } %>
}
Yeoman, şablon motoru olarak ejs kullanıyor. Desteklenen özellikler hakkında daha fazla bilgi için web sitelerini ziyaret edin.
Cevap #2
Bence şablonda bu tür döngülemeyi kullanamazsın. Yapabileceğin şey, betik dosyana bir yardımcı yöntem ekleyip JSON dosyandan içeriği bir değişkene üretmek ve sonra o değişkeni şablonuna eklemektir.
