Element-React Collapse 折疊面板

2020-10-19 11:20 更新

可同時(shí)展開多個(gè)面板,面板之間不影響

  1. render() {
  2. const activeName = "1";
  3. return (
  4. <Collapse value={activeName}>
  5. <Collapse.Item title="一致性 Consistency" name="1">
  6. <div>與現(xiàn)實(shí)生活一致:與現(xiàn)實(shí)生活的流程、邏輯保持一致,遵循用戶習(xí)慣的語言和概念;</div>
  7. <div>在界面中一致:所有的元素和結(jié)構(gòu)需保持一致,比如:設(shè)計(jì)樣式、圖標(biāo)和文本、元素的位置等。</div>
  8. </Collapse.Item>
  9. <Collapse.Item title="反饋 Feedback" name="2">
  10. <div>控制反饋:通過界面樣式和交互動(dòng)效讓用戶可以清晰的感知自己的操作;</div>
  11. <div>頁面反饋:操作后,通過頁面元素的變化清晰地展現(xiàn)當(dāng)前狀態(tài)。</div>
  12. </Collapse.Item>
  13. <Collapse.Item title="效率 Efficiency" name="3">
  14. <div>簡化流程:設(shè)計(jì)簡潔直觀的操作流程;</div>
  15. <div>清晰明確:語言表達(dá)清晰且表意明確,讓用戶快速理解進(jìn)而作出決策;</div>
  16. <div>幫助用戶識(shí)別:界面簡單直白,讓用戶快速識(shí)別而非回憶,減少用戶記憶負(fù)擔(dān)。</div>
  17. </Collapse.Item>
  18. <Collapse.Item title="可控 Controllability" name="4">
  19. <div>用戶決策:根據(jù)場景可給予用戶操作建議或安全提示,但不能代替用戶進(jìn)行決策;</div>
  20. <div>結(jié)果可控:用戶可以自由的進(jìn)行操作,包括撤銷、回退和終止當(dāng)前操作等。</div>
  21. </Collapse.Item>
  22. </Collapse>
  23. )
  24. }

手風(fēng)琴效果

每次只能展開一個(gè)面板

通過 accordion 屬性來設(shè)置是否以手風(fēng)琴模式顯示。

  1. constructor(props) {
  2. super(props)
  3. this.state = {
  4. activeName: '1'
  5. }
  6. }
  7. render() {
  8. return (
  9. <div>
  10. <Button
  11. type="primary"
  12. style={{marginBottom: '15px'}}
  13. onClick={() => this.setState({ activeName: '3' })}
  14. >
  15. 打開第三個(gè)
  16. </Button>
  17. <Collapse value={this.state.activeName} accordion>
  18. <Collapse.Item title="一致性 Consistency" name="1">
  19. <div>與現(xiàn)實(shí)生活一致:與現(xiàn)實(shí)生活的流程、邏輯保持一致,遵循用戶習(xí)慣的語言和概念;</div>
  20. <div>在界面中一致:所有的元素和結(jié)構(gòu)需保持一致,比如:設(shè)計(jì)樣式、圖標(biāo)和文本、元素的位置等。</div>
  21. </Collapse.Item>
  22. <Collapse.Item title="反饋 Feedback" name="2">
  23. <div>控制反饋:通過界面樣式和交互動(dòng)效讓用戶可以清晰的感知自己的操作;</div>
  24. <div>頁面反饋:操作后,通過頁面元素的變化清晰地展現(xiàn)當(dāng)前狀態(tài)。</div>
  25. </Collapse.Item>
  26. <Collapse.Item title="效率 Efficiency" name="3">
  27. <div>簡化流程:設(shè)計(jì)簡潔直觀的操作流程;</div>
  28. <div>清晰明確:語言表達(dá)清晰且表意明確,讓用戶快速理解進(jìn)而作出決策;</div>
  29. <div>幫助用戶識(shí)別:界面簡單直白,讓用戶快速識(shí)別而非回憶,減少用戶記憶負(fù)擔(dān)。</div>
  30. </Collapse.Item>
  31. <Collapse.Item title="可控 Controllability" name="4">
  32. <div>用戶決策:根據(jù)場景可給予用戶操作建議或安全提示,但不能代替用戶進(jìn)行決策;</div>
  33. <div>結(jié)果可控:用戶可以自由的進(jìn)行操作,包括撤銷、回退和終止當(dāng)前操作等。</div>
  34. </Collapse.Item>
  35. </Collapse>
  36. </div>
  37. )
  38. }

自定義面板標(biāo)題

可以通過 title 屬性來實(shí)現(xiàn)自定義面板的標(biāo)題內(nèi)容,以實(shí)現(xiàn)增加圖標(biāo)等效果。

  1. render() {
  2. return (
  3. <Collapse accordion>
  4. <Collapse.Item title={<span>一致性 Consistency<i className="header-icon el-icon-information"></i></span>}>
  5. <div>與現(xiàn)實(shí)生活一致:與現(xiàn)實(shí)生活的流程、邏輯保持一致,遵循用戶習(xí)慣的語言和概念;</div>
  6. <div>在界面中一致:所有的元素和結(jié)構(gòu)需保持一致,比如:設(shè)計(jì)樣式、圖標(biāo)和文本、元素的位置等。</div>
  7. </Collapse.Item>
  8. <Collapse.Item title="反饋 Feedback">
  9. <div>控制反饋:通過界面樣式和交互動(dòng)效讓用戶可以清晰的感知自己的操作;</div>
  10. <div>頁面反饋:操作后,通過頁面元素的變化清晰地展現(xiàn)當(dāng)前狀態(tài)。</div>
  11. </Collapse.Item>
  12. <Collapse.Item title="效率 Efficiency">
  13. <div>簡化流程:設(shè)計(jì)簡潔直觀的操作流程;</div>
  14. <div>清晰明確:語言表達(dá)清晰且表意明確,讓用戶快速理解進(jìn)而作出決策;</div>
  15. <div>幫助用戶識(shí)別:界面簡單直白,讓用戶快速識(shí)別而非回憶,減少用戶記憶負(fù)擔(dān)。</div>
  16. </Collapse.Item>
  17. <Collapse.Item title="可控 Controllability">
  18. <div>用戶決策:根據(jù)場景可給予用戶操作建議或安全提示,但不能代替用戶進(jìn)行決策;</div>
  19. <div>結(jié)果可控:用戶可以自由的進(jìn)行操作,包括撤銷、回退和終止當(dāng)前操作等。</div>
  20. </Collapse.Item>
  21. </Collapse>
  22. )
  23. }

Collapse Attributes

參數(shù) 說明 類型 可選值 默認(rèn)值
accordion 是否手風(fēng)琴模式 boolean false
value 當(dāng)前激活的面板(如果是手風(fēng)琴模式,綁定值類型需要為string,否則為array) string/array

Collapse Events

事件名稱 說明 回調(diào)參數(shù)
onChange 當(dāng)前激活面板改變時(shí)觸發(fā)(如果是手風(fēng)琴模式,參數(shù)類型為string,否則為array) (activeNames: array/string)

Collapse Item Attributes

參數(shù) 說明 類型 可選值 默認(rèn)值
name 唯一標(biāo)志符 string/number
title 面板標(biāo)題 string/node
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號