Vaadin-combo-box: μ˜€λ²„λ ˆμ΄ λ„ˆλΉ„ 지정 ν—ˆμš©

에 λ§Œλ“  2018λ…„ 11μ›” 23일  Β·  6μ½”λ©˜νŠΈ  Β·  좜처: vaadin/vaadin-combo-box

μ˜€λ²„λ ˆμ΄ μš”μ†Œμ˜ λ„ˆλΉ„κ°€ μž…λ ₯ ν•„λ“œμ˜ λ„ˆλΉ„μ™€ λ™μΌν•˜κ²Œ κ³ μ •λ˜μ–΄ μžˆλŠ” 것 κ°™μŠ΅λ‹ˆλ‹€. κ²½μš°μ— 따라(짧은 μž…λ ₯, κΈ΄ ν•­λͺ© μΊ‘μ…˜) μ˜€λ²„λ ˆμ΄ λ„ˆλΉ„λ₯Ό 더 크게 μ‚¬μš©μž μ§€μ •ν•˜λŠ” 것이 μœ μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 이것이 μŠ€νƒ€μΌλ‘œ κ°€λŠ₯ν•˜λ‹€λ©΄ κ·ΈλŸ¬ν•œ 방법을 λ¬Έμ„œν™”ν•΄μ•Ό ν•©λ‹ˆλ‹€.

enhancement documentation flow

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

이제 μ›Ή ꡬ성 μš”μ†Œμ— 이 μž‘μ—…μ„ 더 μ‰½κ²Œ ν•˜λŠ” μƒˆλ‘œμš΄ κΈ°λŠ₯이 μžˆμŠ΅λ‹ˆλ‹€(μ’…λ£Œλœ 문제 https://github.com/vaadin/vaadin-combo-box/issues/529, λ³‘ν•©λœ PR https://github.com/vaadin/ μ°Έμ‘°). vaadin-combo-box/pull/876)

이 λ¬Έμ œλŠ” 이제 이 μƒˆλ‘œμš΄ CSS μ‚¬μš©μž μ •μ˜ μ†Œν’ˆ --vaadin-combo-box-overlay-width 을 μ„€μ •ν•˜κΈ° μœ„ν•œ setOverlayWidth(String cssLength) 와 같은 λ„μš°λ―Έ λ©”μ„œλ“œλ₯Ό μ œκ³΅ν•˜λŠ” 것에 κ΄€ν•œ κ²ƒμž…λ‹ˆλ‹€.

λͺ¨λ“  6 λŒ“κΈ€

μ •ν™•ν•œ λ¬Έμ œκ°€ μ„€λͺ…λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.
μœ„μΉ˜ μž…λ ₯의 경우 일반적인 μ½”λ“œλŠ” "SVG"이고 μΊ‘μ…˜μ€ "Stavanger Airport Sola"μž…λ‹ˆλ‹€.
이것은 μΈνŠΈλΌλ„· μ•±μ΄λ―€λ‘œ μ‚¬μš©μžλŠ” λŒ€λΆ€λΆ„μ˜ μ½”λ“œλ₯Ό μ•”κΈ°ν•˜κ³  "Stavanger..." λŒ€μ‹  "SVG"λ₯Ό μ“°κ³  μ‹Άμ–΄ν•©λ‹ˆλ‹€.
λ˜ν•œ νŽΈμ§‘ κ°€λŠ₯ν•œ κ·Έλ¦¬λ“œμ—μ„œ 이듀 쀑 λͺ‡ κ°œκ°€ λ‚˜λž€νžˆ μžˆμŠ΅λ‹ˆλ‹€. 곡간이 ν˜‘μ†Œν•˜λ―€λ‘œ μ—΄κ³Ό 콀보 μƒμžμ˜ 크기가 μΊ‘μ…˜μ΄ μ•„λ‹Œ μ½”λ“œμ— 맞게 μ‘°μ •λ˜κΈ°λ₯Ό μ›ν•©λ‹ˆλ‹€.

Vaadin은 즉각적인 문제λ₯Ό ν•΄κ²°ν•˜λŠ” ν•΄κ²° 방법을 μ œμ•ˆν–ˆμŠ΅λ‹ˆλ‹€.

<strong i="10">@CssImport</strong>
    ( id        = "vaadin-combo-box-overlay-override"
    , value     = "./styles/vaadin-combo-box-overlay.css"
    , themeFor  = "vaadin-combo-box-overlay"
    )

./styles/vaadin-combo-box-overlay.css:

:host {
     width: 500px !important;
}

λ˜λŠ” 일뢀 콀보 μƒμžμ—μ„œλ§Œ μ›ν•˜λŠ” 경우:

:host([theme~="large"]) {
     width: 500px !important;
}

combobox.getElement().setAttribute("theme", "large");

vaadin/vaadin-combo-box/issues/529의 λ³΅μ œλ³Έμž…λ‹ˆλ‹€.

https://github.com/vaadin/vaadin-combo-box/issues/529#issuecomment -374611447μ—μ„œ μ œμ•ˆλœ 데λͺ¨ κ°œμ„  사항을

ComboBox μ˜€λ²„λ ˆμ΄ λ„ˆλΉ„λ₯Ό λ™μ μœΌλ‘œ μ—…λ°μ΄νŠΈν•˜λ €λ©΄:

:host([theme="my-combo-box"]) {
  width: var(--my-combo-box-overlay-width, 200px) !important;
}
UI.getCurrent().getPage().executeJs("ShadyCSS.styleDocument({'--my-combo-box-overlay-width': $0 + 'px'})", newWidthAsInteger);

이제 μ›Ή ꡬ성 μš”μ†Œμ— 이 μž‘μ—…μ„ 더 μ‰½κ²Œ ν•˜λŠ” μƒˆλ‘œμš΄ κΈ°λŠ₯이 μžˆμŠ΅λ‹ˆλ‹€(μ’…λ£Œλœ 문제 https://github.com/vaadin/vaadin-combo-box/issues/529, λ³‘ν•©λœ PR https://github.com/vaadin/ μ°Έμ‘°). vaadin-combo-box/pull/876)

이 λ¬Έμ œλŠ” 이제 이 μƒˆλ‘œμš΄ CSS μ‚¬μš©μž μ •μ˜ μ†Œν’ˆ --vaadin-combo-box-overlay-width 을 μ„€μ •ν•˜κΈ° μœ„ν•œ setOverlayWidth(String cssLength) 와 같은 λ„μš°λ―Έ λ©”μ„œλ“œλ₯Ό μ œκ³΅ν•˜λŠ” 것에 κ΄€ν•œ κ²ƒμž…λ‹ˆλ‹€.

@Haprogμ—μ„œ μ œμ•ˆν•œ λŒ€λ‘œ λ‹€μŒ μ½”λ“œκ°€ μ œλŒ€λ‘œ μž‘λ™ν•˜λŠ”μ§€ 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.

comboBox.getElement().getStyle().set("--vaadin-combo-box-overlay-width", "400px")

μƒˆ λ¬Έμ„œ μ‚¬μ΄νŠΈμ—λŠ” μœ„μ—μ„œ μ–ΈκΈ‰ν•œ κΈ°λŠ₯을 μ‚¬μš©ν•˜λŠ” μ˜ˆκ°€ μžˆμŠ΅λ‹ˆλ‹€.
https://vaadin.com/docs-beta/latest/ds/components/combo-box/#popup -width

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰

κ΄€λ ¨ 문제

joostdebruijn picture joostdebruijn  Β·  6μ½”λ©˜νŠΈ

heruan picture heruan  Β·  14μ½”λ©˜νŠΈ

davidmaxwaterman picture davidmaxwaterman  Β·  6μ½”λ©˜νŠΈ

steffen-harbich-cognitum picture steffen-harbich-cognitum  Β·  8μ½”λ©˜νŠΈ

web-padawan picture web-padawan  Β·  3μ½”λ©˜νŠΈ