dropdown.vue 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. <template>
  2. <div>
  3. <nut-demoheader
  4. :name="$route.name"
  5. ></nut-demoheader>
  6. <h5>示例</h5>
  7. <h6>示例1: 单选、简单数组</h6>
  8. <nut-dropdown :options="options" @selectedChange='multipleSelected'></nut-dropdown>
  9. <nut-codebox :code="demo1"></nut-codebox>
  10. <h6>示例2: 单选、简单数组、设置默认值</h6>
  11. <nut-dropdown :options="options" @selectedChange='multipleSelected' defaultSelected='二'></nut-dropdown>
  12. <nut-codebox :code="demo2"></nut-codebox>
  13. <h6>示例3: 多选、简单数组</h6>
  14. <nut-dropdown :options="options" multiple @selectedChange='selectedChange'></nut-dropdown>
  15. <nut-codebox :code="demo3"></nut-codebox>
  16. <h6>示例4: 多选、简单数组、设置默认值</h6>
  17. <nut-dropdown :options="options" multiple @selectedChange='selectedChange' :defaultSelected="['一','二']"></nut-dropdown>
  18. <nut-codebox :code="demo4"></nut-codebox>
  19. <h6>示例5: 单选、复杂对象数组、自定义展示字段</h6>
  20. <nut-dropdown :options="options2" @selectedChange='selectedChange' optionKey='name'></nut-dropdown>
  21. <nut-codebox :code="demo5"></nut-codebox>
  22. <h6>示例6: 多选、复杂对象数组、自定义展示字段</h6>
  23. <nut-dropdown :options="options2" multiple @selectedChange='selectedChange' optionKey='name'></nut-dropdown>
  24. <nut-codebox :code="demo6"></nut-codebox>
  25. <h6>示例7: 单选、复杂对象数组、自定义展示字段、设置默认值</h6>
  26. <nut-dropdown :options="options2" @selectedChange='selectedChange' optionKey='name' :defaultSelected="{name: '李四', id: 2}"></nut-dropdown>
  27. <nut-codebox :code="demo7"></nut-codebox>
  28. <h6>示例8: 多选、复杂对象数组、自定义展示字段、设置默认值</h6>
  29. <nut-dropdown :options="options2" multiple @selectedChange='selectedChange' optionKey='name' :defaultSelected="[{name: '李四', id: 2}]"></nut-dropdown>
  30. <nut-codebox :code="demo8"></nut-codebox>
  31. <h6>示例9: 多选、复杂对象数组、自定义展示字段、支持搜索</h6>
  32. <nut-dropdown :options="options2" multiple @selectedChange='selectedChange' optionKey='name' search></nut-dropdown>
  33. <nut-codebox :code="demo9"></nut-codebox>
  34. <h6>示例10: 单选、简单数组、支持搜索</h6>
  35. <nut-dropdown :options="options" @selectedChange='selectedChange' search></nut-dropdown>
  36. <nut-codebox :code="demo10"></nut-codebox>
  37. </div>
  38. </template>
  39. <script>
  40. export default {
  41. data() {
  42. return {
  43. options: ['一','二','三','四'],
  44. options2: [{name: '张三', id: 1}, {name: '李四', id: 2}, {name: '王五', id: 3}, {name: '马六', id: 4}, {name: '王久', id: 5}],
  45. code: `
  46. export default {
  47. data() {
  48. retuen {
  49. options: ['一','二','三','四'],
  50. options2: [{name: '张三', id: 1}, {name: '李四', id: 2}, {name: '王五', id: 3}, {name: '马六', id: 4}, {name: '王久', id: 5}],
  51. }
  52. },
  53. methods: {
  54. selectedChange(option) {
  55. console.log(option)
  56. },
  57. }
  58. }
  59. `,
  60. demo1: `<nut-dropdown :options="options" @selectedChange='multipleSelected'></nut-dropdown>`,
  61. demo2: `<nut-dropdown :options="options" @selectedChange='selectedChange' defaultSelected='二'></nut-dropdown>`,
  62. demo3: `<nut-dropdown :options="options" multiple @selectedChange='selectedChange'></nut-dropdown>`,
  63. demo4: `<nut-dropdown :options="options" multiple @selectedChange='selectedChange' :defaultSelected="['一','二']"></nut-dropdown>`,
  64. demo5: `<nut-dropdown :options="options2" @selectedChange='selectedChange' optionKey='name' ></nut-dropdown>`,
  65. demo6: `<nut-dropdown :options="options2" multiple @selectedChange='selectedChange' optionKey='name'></nut-dropdown>`,
  66. demo7: `<nut-dropdown :options="options2" @selectedChange='selectedChange' optionKey='name' :defaultSelected="{name: '李四', id: 2}"></nut-dropdown>`,
  67. demo8: `<nut-dropdown :options="options2" multiple @selectedChange='selectedChange' optionKey='name' :defaultSelected="[{name: '李四', id: 2}]"></nut-dropdown>`,
  68. demo9: `<nut-dropdown :options="options2" multiple @selectedChange='selectedChange' optionKey='name' search></nut-dropdown>`,
  69. demo10: `<nut-dropdown :options="options" @selectedChange='selectedChange' search></nut-dropdown>`
  70. };
  71. },
  72. mounted(){
  73. },
  74. methods: {
  75. selectedChange(option) {
  76. console.log(option)
  77. },
  78. multipleSelected(options) {
  79. console.log(options)
  80. }
  81. }
  82. };
  83. </script>
  84. <style lang="scss">
  85. </style>