2016-02-12 82 views
0

我想寫一個圍繞select元素的包裝。所以原則上我希望能夠指定給定一些布爾型multiple我想追加multiple屬性或不。下面我給出一個小例子:Scalatags條件屬性

select (id := someId, name := someName, if (multiple) "multiple".attr := "") 

這顯然不會編譯,但它應該表達我的意圖。

回答

0

你可以試試:

val attrList = if (multiple) List("multiple".attr = "") else List.empty 
select (id := someId, name := someName)(attrList:_*) 

你是否添加屬性,或者沒有這樣的條件。

+0

它接近我最終做的。我選擇使用'Option'而不是'List'。在閱讀代碼時,這對我來說更有意義。 'val multipleAttr = if(multiple)Some(「multiple」.attr:=「」)else None'我使用它:'select(id:= someId,name:= someName,multipleAttr)'。這也適用。我接受了答案,因爲它也適用。 – irundaia