-
Notifications
You must be signed in to change notification settings - Fork 26
フォームの表示 #4
base: master
Are you sure you want to change the base?
フォームの表示 #4
Conversation
src/index.ts
Outdated
<input type="${item.type}" id="${x.label}" name="${item.name}" value="${x.value}"> | ||
<label for="${x.label}">${x.label}</label>` | ||
) | ||
.reduce((s, x) => s + x); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
文字列の配列を連結する際は .join("")
が使えたりします。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
あ、たしかにそうですね
const inputs_html = item.values | ||
.map( | ||
(x) => ` | ||
<input type="${item.type}" id="${x.label}" name="${item.name}" value="${x.value}"> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
name属性の扱いについて、 radio と checkbox で扱いが同じでよいか?ということを考えてみるとよいと思います。
型としては両方 MultipleValueInputItems
として扱ってよいのですが、出力されるHTMLがこれで問題ないか( = チェックボックスのnameが全valuesで同じ値になってしまっている) 点は要注意ですね
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
たしかに…気づかなかったです…!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
これ、私も同じことをしていたのですが、 type=checkbox
で同一の name
属性を持つものが複数存在することは問題ないのではないか、と思ったのですが、何か問題があるのでしょうか……?
type SingleValueInputItems = | ||
| SingleValueInputItem<"text"> | ||
| SingleValueInputItem<"email"> | ||
| SingleValueInputItem<"tel">; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Genericsを使ってコード量を上手に削減していますね、とてもよい工夫だと思います 😄
No description provided.