<script>
export default {
    components: {},
    data() {
        return{
            data: [
                {name: '小红', age: '12岁'},
                {name: '小绿', age: '13岁'},
                {name: '小蓝', age: '14岁'},
                {name: '小灰', age: '15岁'}
            ],
            list: [ {
                id:6,
                date: '2016-05-03',
                name: '黑小虎',
                address: '上海市普陀区金沙江路 1516 弄'
            }],
            array: [1111, 2222, 3333,4444, 5555, 6666],
            array2: [1111, 2222],
            array3: [{name: '层级1' , data: [
                        {name: '子层级1', data: [
                            {name: '子子层级1'},
                            {name: '子子层级2'}
                        ]},
                        {name: '子层级2', data: [
                            {name: '子子层级3'},
                            {name: '子子层级4'}
                        ]}                    
                    ]},
                    {name: '层级2'}
            ],
            array4: [{name: '层级1' , data: [
                            {name: '子层级1', data: [
                                {name: '子子层级1'},
                                {name: '子子层级2'}
                            ]},
                            {name: '子层级2', data: [
                                {name: '子子层级3'},
                                {name: '子子层级4'}
                            ]}                    
                         ]},
                         {name: '子层级1', data: [
                            {name: '子子层级1'},
                            {name: '子子层级2'}
                         ]},
                    ],
            screen: ['监听名称','协议类型','端口号','状态','报错','控制','健康'],
            getValue: function($event) {
              console.log($event);
              this.array2 = $event;
            },
            hoverCall($event) {
                console.log('hover回调',$event)
            },
            inputCall($event) {
                console.log('回调input',$event)
                this.list = [];

            },
            page: {
                total: 0,
                start: 0,
                length: 10,
            },
            changePage($event) {
                this.page.length = $event.length;
                this.page.start = $event.start;
                // this.getList();
                console.log(this.page)
            },
        }
    }
}
</script>
# Select 选择框

## 基础用法
:::demo 使用f-icon嵌入图标
````html
<efly-select :data="data"  main="name" minor="address" @hover="hoverCall($event)" downIcon="icon-down" searchIcon="icon-search"></efly-select>
<script>
export default {
    components: {},
    data() {
        return{
            data: [{
                id:1,
                date: '2016-05-02',
                name: '蓝小虎',
                address: '上海市普陀区金沙江路 1518 弄'
            }, {
                id:2,
                date: '2016-05-04',
                name: '黄小虎',
                address: '上海市普陀区金沙江路 1517 弄'
            }, {
                id:3,
                date: '2016-05-01',
                name: '绿小虎',
                address: '上海市普陀区金沙江路 1519 弄'
            },{
                id:4,
                date: '2016-05-03',
                name: '红小虎',
                address: '上海市普陀区金沙江路 1516 弄'
            }, {
                id:5,
                date: '2016-05-03',
                name: '紫小虎',
                address: '上海市普陀区金沙江路 1516 弄'
            }, {
                id:6,
                date: '2016-05-03',
                name: '黑小虎',
                address: '上海市普陀区金沙江路 1516 弄'
            }]
        }
    }
}
</script>
````
:::


## 默认值选中
:::demo 使用f-icon嵌入图标
````html
<efly-select :data="data" main="name" :value="data[1]" minor="address" downIcon="icon-down" searchIcon="icon-search"></efly-select>
<script>
export default {
    components: {},
    data() {
        return{
            data: [{
                id:1,
                date: '2016-05-02',
                name: '蓝小虎',
                address: '上海市普陀区金沙江路 1518 弄'
            }, {
                id:2,
                date: '2016-05-04',
                name: '黄小虎',
                address: '上海市普陀区金沙江路 1517 弄'
            }, {
                id:3,
                date: '2016-05-01',
                name: '绿小虎',
                address: '上海市普陀区金沙江路 1519 弄'
            },{
                id:4,
                date: '2016-05-03',
                name: '红小虎',
                address: '上海市普陀区金沙江路 1516 弄'
            }, {
                id:5,
                date: '2016-05-03',
                name: '紫小虎',
                address: '上海市普陀区金沙江路 1516 弄'
            }, {
                id:6,
                date: '2016-05-03',
                name: '黑小虎',
                address: '上海市普陀区金沙江路 1516 弄'
            }]
        }
    }
}
</script>
````
:::

## 搜索选择框
可以进行模糊搜索的数据的选择框
:::demo 使用f-icon嵌入图标
````html
<efly-select :data="data" main="name" minor="address" searchType="front" type="search" @input="inputCall" @hover="hoverCall"></efly-select>
<script>
export default {
    components: {},
    data() {
        return{
            data: [{
                id:1,
                date: '2016-05-02',
                name: '蓝小虎',
                address: '上海市普陀区金沙江路 1518 弄'
            }, {
                id:2,
                date: '2016-05-04',
                name: '黄小虎',
                address: '上海市普陀区金沙江路 1517 弄'
            }, {
                id:3,
                date: '2016-05-01',
                name: '绿小虎',
                address: '上海市普陀区金沙江路 1519 弄'
            },{
                id:4,
                date: '2016-05-03',
                name: '红小虎',
                address: '上海市普陀区金沙江路 1516 弄'
            }, {
                id:5,
                date: '2016-05-03',
                name: '紫小虎',
                address: '上海市普陀区金沙江路 1516 弄'
            }, {
                id:6,
                date: '2016-05-03',
                name: '黑小虎',
                address: '上海市普陀区金沙江路 1516 弄'
            }]
        }
    }
}
</script>
````
:::


## 固定上下显示
:::demo 使用f-icon嵌入图标
````html
<div class="box flex-column">
<efly-select :data="data" main="name" placement="top" :value="data[1]" minor="address" downIcon="icon-down" searchIcon="icon-search"></efly-select>
<efly-select :data="data" main="name" placement="bottom" :value="data[1]" minor="address" downIcon="icon-down" searchIcon="icon-search"></efly-select>
</div>
<script>
export default {
    components: {},
    data() {
        return{
            data: [{
                id:1,
                date: '2016-05-02',
                name: '蓝小虎',
                address: '上海市普陀区金沙江路 1518 弄'
            }, {
                id:2,
                date: '2016-05-04',
                name: '黄小虎',
                address: '上海市普陀区金沙江路 1517 弄'
            }, {
                id:3,
                date: '2016-05-01',
                name: '绿小虎',
                address: '上海市普陀区金沙江路 1519 弄'
            },{
                id:4,
                date: '2016-05-03',
                name: '红小虎',
                address: '上海市普陀区金沙江路 1516 弄'
            }, {
                id:5,
                date: '2016-05-03',
                name: '紫小虎',
                address: '上海市普陀区金沙江路 1516 弄'
            }, {
                id:6,
                date: '2016-05-03',
                name: '黑小虎',
                address: '上海市普陀区金沙江路 1516 弄'
            }]
        }
    }
}
</script>
````
:::

## 无滚动或设置高度
:::demo 使用f-icon嵌入图标
````html
<efly-select :data="data" main="name" placement="bottom" height="auto" :value="data[1]" minor="address" downIcon="icon-down" searchIcon="icon-search"></efly-select>
<script>
export default {
    components: {},
    data() {
        return{
            data: [{
                id:1,
                date: '2016-05-02',
                name: '蓝小虎',
                address: '上海市普陀区金沙江路 1518 弄'
            }, {
                id:2,
                date: '2016-05-04',
                name: '黄小虎',
                address: '上海市普陀区金沙江路 1517 弄'
            }, {
                id:3,
                date: '2016-05-01',
                name: '绿小虎',
                address: '上海市普陀区金沙江路 1519 弄'
            },{
                id:4,
                date: '2016-05-03',
                name: '红小虎',
                address: '上海市普陀区金沙江路 1516 弄'
            }, {
                id:5,
                date: '2016-05-03',
                name: '紫小虎',
                address: '上海市普陀区金沙江路 1516 弄'
            }, {
                id:6,
                date: '2016-05-03',
                name: '黑小虎',
                address: '上海市普陀区金沙江路 1516 弄'
            }]
        }
    }
}
</script>
````
:::

## 数组用法
数组形式直接不用穿任何参数就会自动识别。
:::demo 使用f-icon嵌入图标
````html
<efly-select :data="array" :value="array[0]"></efly-select>
<script>
export default {
    components: {},
    data() {
        return{
            array: [1111, 2222, 3333,4444, 5555, 6666]
        }
    }
}
</script>
````
:::

## 多选用法
数组形式直接不用穿任何参数就会自动识别。
:::demo 使用`f-icon`嵌入图标
````html
<efly-select :data="array" :value="array2" multi @change="getValue($event)" cancelIcon="icon-deep-error" :largest="2"></efly-select>
<script>
export default {
    components: {},
    data() {
        return{
            array: [1111, 2222, 3333,4444, 5555, 6666],
            array2: [1111, 2222]
        }
    }
}
</script>
````
:::


## 层级用法
无限制层级用法，自动识别子层级参数明进行深度递归。
:::demo 使用`f-icon`嵌入图标
````html
<efly-select size="small" :data="array3" :value="array4" multi main="name" children="data"  downIcon="icon-down" rightIcon="icon-next" cancelIcon="icon-deep-error" @change="getValue($event)"></efly-select>
<script>
export default {
    components: {},
    data() {
        return{
           array3: [{name: '层级1' , data: [
                        {name: '子层级1', data: [
                            {name: '子子层级1'},
                            {name: '子子层级2'}
                        ]},
                        {name: '子层级2', data: [
                            {name: '子子层级3'},
                            {name: '子子层级4'}
                        ]}                    
                    ]},
                    {name: '层级2'}
            ],
            array4: [{name: '层级1' , data: [
                            {name: '子层级1', data: [
                                {name: '子子层级1'},
                                {name: '子子层级2'}
                            ]},
                            {name: '子层级2', data: [
                                {name: '子子层级3'},
                                {name: '子子层级4'}
                            ]}                    
                         ]},
                         {name: '子层级1', data: [
                            {name: '子子层级1'},
                            {name: '子子层级2'}
                         ]},
                    ],
        }
    }
}
</script>
````
:::


## 禁用状态
:::demo 使用f-icon嵌入图标
````html
<efly-select :data="data" main="name" :value="data[1]" disabled minor="address" downIcon="icon-down" searchIcon="icon-search"></efly-select>
<script>
export default {
    components: {},
    data() {
        return{
            data: [{
                id:1,
                date: '2016-05-02',
                name: '蓝小虎',
                address: '上海市普陀区金沙江路 1518 弄'
            }, {
                id:2,
                date: '2016-05-04',
                name: '黄小虎',
                address: '上海市普陀区金沙江路 1517 弄'
            }, {
                id:3,
                date: '2016-05-01',
                name: '绿小虎',
                address: '上海市普陀区金沙江路 1519 弄'
            },{
                id:4,
                date: '2016-05-03',
                name: '红小虎',
                address: '上海市普陀区金沙江路 1516 弄'
            }, {
                id:5,
                date: '2016-05-03',
                name: '紫小虎',
                address: '上海市普陀区金沙江路 1516 弄'
            }, {
                id:6,
                date: '2016-05-03',
                name: '黑小虎',
                address: '上海市普陀区金沙江路 1516 弄'
            }]
        }
    }
}
</script>
````
:::

## 尺寸
:::demo 使用f-icon嵌入图标
````html
<div class="box flex-column">
<efly-select :data="data" main="name" minor="address" type="search"></efly-select>
<efly-select :data="data" main="name" minor="address" type="search" size="small"></efly-select>
<efly-select :data="data" main="name" minor="address" type="search" size="mini"></efly-select>
</div>
<script>
export default {
    components: {},
    data() {
        return{
            data: [{
                id:1,
                date: '2016-05-02',
                name: '蓝小虎',
                address: '上海市普陀区金沙江路 1518 弄'
            }, {
                id:2,
                date: '2016-05-04',
                name: '黄小虎',
                address: '上海市普陀区金沙江路 1517 弄'
            }, {
                id:3,
                date: '2016-05-01',
                name: '绿小虎',
                address: '上海市普陀区金沙江路 1519 弄'
            },{
                id:4,
                date: '2016-05-03',
                name: '红小虎',
                address: '上海市普陀区金沙江路 1516 弄'
            }, {
                id:5,
                date: '2016-05-03',
                name: '紫小虎',
                address: '上海市普陀区金沙江路 1516 弄'
            }, {
                id:6,
                date: '2016-05-03',
                name: '黑小虎',
                address: '上海市普陀区金沙江路 1516 弄'
            }]
        }
    }
}
</script>
````
:::


















## 参数说明
| 参数      | 说明    | 类型      | 可选值       | 默认值   |
|---------- |-------- |---------- |-------------  |-------- |
| type      | 类型   | String  | select / search          |    select    |
| border      | 边框颜色   | String  | danger / -          |    -    |
| multi  | 多选状态| Boolean | true/false |    false    |
| disabled  | 禁用状态| Boolean | true/false |    false    |
| size       |大小     | String  |    small / mini  |    —     |
| searchType |搜索形式  | String  |    front / interface  |    front     |
| data      | 数据   | Array  |     —        |    —     |
| value     | 默认显示值（单选默认值或对象,多选时为数组）  | Any  |    —          |    —    |
| prop      | 匹配参数 | String  |    —          |    —    |
| main      | 主要字段,用于显示主要文本及搜索 | String  |    —          |    —    |
| minor     | 次要字段,用于显示次要文本及搜索 | String  |    —          |    —    |
| children  | 子层级参数名 | String  |    —          |    —    |
| width     | 组件宽度 | String  |    —          |    —    |
| height    | 组件高度 | String  |    auto|高度值          |    200px    |
| placement | 默认显示位置 | String  |    auto/bottom/ top          |    auto    |
| downIcon  | 下拉图标| String  | —          |    icon-down    |
| rightIcon  | 右图标| String  | —          |    icon-next    |
| searchIcon| 搜索图标| String  | —          |    icon-search    |
| cancelIcon| 关闭图标| String  | —          |    —    |
| defShowDownIcon| 是否默认显示下拉图标| Boolean  | true/false          |    false    |
| placeholder | 默认显示文字 | String  | —          |    —    |
| forbidden | 子选项禁用字段名称（为boolean） | String  | —          |    —    |


## 事件
| 事件名称      | 说明    | 回调参数   
|---------- |-------- |---------- |
| change     | 选项改变事件   | 选择对象  |
| reachBottom| 触底事件   |  —  |


