13518219792

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

创新互联百度小程序教程:filter筛选

filter 筛选

解释:筛选,由筛选头部(filter-header)以及筛选面板(filter-body)组成,其中筛选面板支持单列筛选、级联筛选、多项选择筛选以及自定义筛选。

钦南网站建设公司创新互联建站,钦南网站设计制作,有大型网站制作公司丰富经验。已为钦南近千家提供企业网站建设服务。企业网站搭建\外贸网站建设要多少钱,请找那个售后服务好的钦南做网站的公司定做!

属性说明

属性名 类型 必填 默认值 说明

filterId

String

筛选组件的唯一标示

selections

String

筛选项内容数组,数组格式为:
[{
  text: ‘名称’,
  value: ‘值’,
  type: ‘single’/‘cascade’/‘checkbox-group’/‘custom’,
  options: [{
        text: ‘’,
        value: ‘’,
        highlight: false,
        textWidth: 100
     }]
}]
highlight: false表示选中后,筛选头部不高亮显示;
textWidth: 100表示筛选头部宽度为 100px

value

String/Number/Array

选中项的值

border

Boolean

true

筛选器头部(filter-header)是否带有下边线

fontColor

String

#000

筛选器头部(filter-header)默认状态下的文字颜色

iconColor

String

#000

筛选器头部(filter-header)默认状态下的 icon 颜色

activeColor

String

#2772fb

筛选器选中时筛选头部(filter-header)以及筛选面板(filter-body)icon 颜色

disColor

String

#666

筛选器选中时筛选头部(filter-header)配置不高亮(highlight: false)时的文字和 icon 颜色

filter-header-class

String

筛选组件头部的外部样式类,可用于修改整个头部的最外层样式

filter-btn-class

String

筛选组件头部的外部样式类,可用于修改某个头部按钮的样式

filter-btn-text-class

String

筛选组件头部的外部样式类,可用于修改某个头部的文字样式

filter-body-class

String

筛选组件展开时筛选面板(filter-body)外部样式类,可用于修改筛选面板的最外层样式

bindselect

EventHandle

更改筛选面板中内容时触发,可用于获取组件选中的内容

bindexpand

EventHandle

点击筛选头部或者筛选面板关闭时触发,可用于获取筛选面板收起 / 展开状态

selections 中的 type 有效值

说明
single默认值,筛选组件展开后为单列面板
cascade筛选组件展开后为筛选面板为级联面板,tips:筛选组件目前最多支持 3 级
options 格式为:[{
  text: ‘’,
  value: ‘’,
  children: [{
   text: ‘’,
   value: ‘’
  }]
}]
checkbox-group筛选组件展开后为多选面板。需要修改多选面板样式,可以在 selections 中增加 column、itemStyle 等配置,可参考 checkbox-group 组件
custom筛选组件展开后为自定义面板。如果你想要自定义筛选面板,则 selections 需要增加 slot ,如:slot=custom

type 为 single 时的样式

属性名 类型 必填 默认值 说明
filter-singlelist-classString单列筛选外部样式类,可用于修改单列筛选组件最外层样式
filter-singlelist-item-classString单列筛选外部样式类,可用于修改单列筛选组件中每一项展开元素的样式
filter-singlelist-item-text-classString单列筛选外部样式类,可用于修改单列筛选组件中每一项展开元素的文字样式

type 为 cascade 时的样式

属性名 类型 必填 默认值 说明
filter-cascade-classString级联筛选外部样式类,可用户修改级联筛选组件最外层样式
filter-cascade-column-classString级联筛选组件外部样式类,可用户修改组件展开面板中,某一列的样式
filter-cascade-column-item-classString级联筛选组件外部样式类,可用户修改组件展开面板中,某一列中某一项的样式
filter-cascade-column-item-text-classString级联筛选组件外部样式类,可用户修改组件展开面板中,某一列中某一项的文字的样式

type 为 checkbox-group 时的样式

属性名 类型 必填 默认值 说明
activeTextColorString#2772fb筛选面板(filter-body)为多项选择筛选时选中时的文字颜色
activeIconColorString#2772fb筛选面板(filter-body)为多项选择筛选时选中时的 icon 颜色
activeBgColorString#2772fb筛选面板(filter-body)为多项选择筛选时选中时的背景颜色
filter-checkbox-group-classString多项筛选组件外部样式类,可用于修改组件最外层样式
checkbox-group-classString多项组件的外部样式类,可用于修改组件展开的多项选择面板样式

示例

跳转编辑工具

在开发者工具中打开

在 WEB IDE 中打开

扫码体验

代码示例

请使用百度APP扫码

代码示例

 
 
 
  1. {{item.title}}
  2. border="{{false}}"
  3. font-color="{{item.fontColor}}"
  4. icon-color="{{item.iconColor}}"
  5. selections="{{item.selections}}"
  6. filter-id="{{index + 1}}"
  7. />
  8. {{item.title}}
  9. data-index="{{index}}"
  10. selections="{{item.selections}}"
  11. bind:select="selHdl"
  12. bind:expand="expandHdl"
  13. filter-id="{{index + 6}}"
  14. />
  15. s-if="item.type === 'custom'"
  16. class="{{item.class || 'filter-body'}}"
  17. filter-id="{{index + 6}}"
  18. selections="{{item.selections}}">
  19. s-if="customData[item].label"
  20. class="custom-content-label">{{customData[item].label}}
  21. s-if="customData[item].type === 'checkbox-group'"
  22. checkbox-group-class="filter-checkbox-group"
  23. column="{{customData[item].column}}"
  24. options="{{customData[item].options}}"
  25. value="{{customData[item].value}}"
  26. data-key="{{item}}"
  27. itemStyle="{{customData[item].itemStyle}}"
  28. bind:change="changeHdl"
  29. />
  30. class="btn reset"
  31. type="default"
  32. bindtap="resetHdl"
  33. disabled="{{resetDisabled}}"
  34. >重置
  35. class="btn submit"
  36. type="primary"
  37. bindtap="ensureHdl"
  38. >确定
  39. s-else
  40. class="{{item.class || 'filter-body'}}"
  41. checkbox-group-class="filter-checkbox-group"
  42. filter-id="{{index + 6}}"
  43. selections="{{item.selections}}"
  44. />
  45. 将数据“上海市”回填到筛选器一中,数据“东厂社区”回填到筛选器三中

数据示例

  • JS
 
 
 
  1. import {upx2rpx} from '@smt-ui/component/src/common/utils/px';
  2. // 筛选头部数据
  3. export const headerArray = [
  4. {
  5. title: '单个筛选',
  6. selections: [
  7. {
  8. text: '筛选器一',
  9. value: '1'
  10. }
  11. ]
  12. },
  13. {
  14. title: '两个筛选',
  15. selections: [
  16. {
  17. text: '筛选器一',
  18. value: '1'
  19. },
  20. {
  21. text: '筛选器二',
  22. value: '2'
  23. }
  24. ]
  25. },
  26. {
  27. title: '三个筛选',
  28. selections: [
  29. {
  30. text: '筛选器一',
  31. value: '1'
  32. },
  33. {
  34. text: '筛选器二',
  35. value: '2'
  36. },
  37. {
  38. text: '筛选器三',
  39. value: '3'
  40. }
  41. ]
  42. },
  43. {
  44. title: '四个筛选',
  45. selections: [
  46. {
  47. text: '筛选器超过四个字打点',
  48. value: '1'
  49. },
  50. {
  51. text: '筛选器二',
  52. value: '2'
  53. },
  54. {
  55. text: '筛选器三',
  56. value: '3'
  57. },
  58. {
  59. text: '筛选器四',
  60. value: '4'
  61. }
  62. ]
  63. },
  64. {
  65. title: '自定义样式',
  66. fontColor: '#2772fb',
  67. iconColor: '#2772fb',
  68. selections: [
  69. {
  70. text: '最多支持8个字超过打点',
  71. textWidth: 386
  72. }
  73. ]
  74. }
  75. ];
  76. // 级联筛选第一列数据
  77. const cascadeFirstOptions = [
  78. {
  79. text: '全部所在地区',
  80. value: 'all',
  81. children: [
  82. {
  83. value: 'all',
  84. text: '全部所在地区'
  85. }
  86. ]
  87. },
  88. {
  89. value: 'bj',
  90. text: '北京市',
  91. children: [
  92. {
  93. value: 3848,
  94. text: '全部北京市'
  95. },
  96. {
  97. value: 3851,
  98. text: '东城区'
  99. },
  100. {
  101. value: 3852,
  102. text: '西城区'
  103. },
  104. {
  105. value: 3853,
  106. text: '海淀区'
  107. },
  108. {
  109. value: 3854,
  110. text: '朝阳区'
  111. },
  112. {
  113. value: 3855,
  114. text: '丰台区'
  115. },
  116. {
  117. value: 3856,
  118. text: '石景山区'
  119. },
  120. {
  121. value: 3857,
  122. text: '通州区'
  123. },
  124. {
  125. value: 3858,
  126. text: '顺义区'
  127. },
  128. {
  129. value: 3859,
  130. text: '房山区'
  131. },
  132. {
  133. value: 3860,
  134. text: '大兴区'
  135. },
  136. {
  137. value: 3861,
  138. text: '昌平区'
  139. },
  140. {
  141. value: 3862,
  142. text: '怀柔区'
  143. },
  144. {
  145. value: 3863,
  146. text: '平谷区'
  147. },
  148. {
  149. value: 3864,
  150. text: '门头沟区'
  151. },
  152. {
  153. value: 3865,
  154. text: '密云区'
  155. },
  156. {
  157. value: 3866,
  158. text: '延庆区'
  159. }
  160. ]
  161. },
  162. {
  163. value: 'tj',
  164. text: '天津市',
  165. children: [
  166. {
  167. value: 3849,
  168. text: '全部天津市'
  169. },
  170. {
  171. value: 3879,
  172. text: '和平区'
  173. },
  174. {
  175. value: 3880,
  176. text: '河东区'
  177. },
  178. {
  179. value: 3881,
  180. text: '河西区'
  181. },
  182. {
  183. value: 3882,
  184. text: '南开区'
  185. },
  186. {
  187. value: 3883,
  188. text: '河北区'
  189. },
  190. {
  191. value: 3884,
  192. text: '红桥区'
  193. },
  194. {
  195. value: 3885,
  196. text: '塘沽区'
  197. },
  198. {
  199. value: 3886,
  200. text: '汉沽区'
  201. },
  202. {
  203. value: 3887,
  204. text: '大港区'
  205. },
  206. {
  207. value: 3888,
  208. text: '东丽区'
  209. },
  210. {
  211. value: 3889,
  212. text: '西青区'
  213. },
  214. {
  215. value: 3890,
  216. text: '津南区'
  217. },
  218. {
  219. value: 3891,
  220. text: '北辰区'
  221. },
  222. {
  223. value: 3892,
  224. text: '武清区'
  225. },
  226. {
  227. value: 3893,
  228. text: '宝坻区'
  229. },
  230. {
  231. value: 3894,
  232. text: '宁河县'
  233. },
  234. {
  235. value: 3895,
  236. text: '静海区'
  237. },
  238. {
  239. value: 3896,
  240. text: '蓟州区'
  241. },
  242. {
  243. value: 3897,
  244. text: '滨海新区'
  245. }
  246. ]
  247. },
  248. {
  249. value: 'hb',
  250. text: '河北省',
  251. children: [
  252. {
  253. value: 3850,
  254. text: '全部河北省'
  255. },
  256. {
  257. value: 3867,
  258. text: '石家庄市'
  259. },
  260. {
  261. value: 3868,
  262. text: '唐山市'
  263. },
  264. {
  265. value: 3869,
  266. text: '秦皇岛市'
  267. },
  268. {
  269. value: 3870,
  270. text: '邯郸市'
  271. },
  272. {
  273. value: 3871,
  274. text: '邢台市'
  275. },
  276. {
  277. value: 3872,
  278. text: '保定市'
  279. },
  280. {
  281. value: 3873,
  282. text: '张家口市'
  283. },
  284. {
  285. value: 3874,
  286. text: '承德市'
  287. },
  288. {
  289. value: 3875,
  290. text: '沧州市'
  291. },
  292. {
  293. value: 3876,
  294. text: '廊坊市'
  295. },
  296. {
  297. value: 3877,
  298. text: '衡水市'
  299. },
  300. {
  301. value: 3878,
  302. text: '涿州市'
  303. }
  304. ]
  305. }
  306. ];
  307. // 级联筛选第二和第三列数据
  308. export const cascadeSecondAndThirdOptions = [
  309. {
  310. text: '东城区',
  311. value: '110101000000',
  312. children: [
  313. {
  314. text: '全部街道',
  315. value: '110101000000',
  316. children: [
  317. {
  318. text: '全部社区',
  319. value: '110101000000'
  320. }
  321. ]
  322. },
  323. {
  324. text: '东城区安定门街道',
  325. value: '110101004000',
  326. children: [
  327. {
  328. text: '全部社区',
  329. value: '110101004000'
  330. }
  331. ]
  332. },
  333. {
  334. text: '东城区建国门街道',
  335. value: '110101008000',
  336. children: [
  337. {
  338. text: '全部社区',
  339. value: '110101008000'
  340. },
  341. {
  342. text: '崇内社区',
  343. value: '11110101000033398110'
  344. },
  345. {
  346. text: '东总布社区',
  347. value: '11110101000033398111'
  348. },
  349. {
  350. text: '金宝街北社区',
  351. value: '11110101000033398103'
  352. },
  353. {
  354. text: '大雅宝社区',
  355. value: '11110101000033398104'
  356. },
  357. {
  358. text: '赵家楼社区',
  359. value: '11110101000033398105'
  360. },
  361. {
  362. text: '站东社区',
  363. value: '11110101000033398106'
  364. }
  365. ]
  366. },
  367. {
  368. text: '东城区朝阳门街道',
  369. value: '110101007000',
  370. children: [
  371. {
  372. text: '全部社区',
  373. value: '110101007000'
  374. }
  375. ]
  376. },
  377. {
  378. text: '东城区东直门街道',
  379. value: '110101009000',
  380. children: [
  381. {
  382. text: '全部社区',
  383. value: '110101009000'
  384. }
  385. ]
  386. },
  387. {
  388. text: '东城区东华门街道',
  389. value: '110101001000',
  390. children: [
  391. {
  392. text: '全部社区',
  393. value: '110101001000'
  394. },
  395. {
  396. text: '正义路社区',
  397. value: '11110101000033443B01'
  398. },
  399. {
  400. text: '台基厂社区',
  401. value: '11110101000033443B08'
  402. },
  403. {
  404. text: '南池子社区',
  405. value: '11110101000033443B09'
  406. },
  407. {
  408. text: '智德社区',
  409. value: '11110101000033443B11'
  410. },
  411. {
  412. text: '银闸社区',
  413. value: '11110101000033443B13'
  414. },
  415. {
  416. text: '王府井社区',
  417. value: '11110101000033443B19'
  418. },
  419. {
  420. text: '东厂社区',
  421. value: '11110101000033443B20'
  422. }
  423. ]
  424. },
  425. {
  426. text: '东城区和平里街道',
  427. value: '110101010000',
  428. children: [
  429. {
  430. text: '全部社区',
  431. value: '110101010000'
  432. }
  433. ]
  434. },
  435. {
  436. text: '东城区北新桥街道',
  437. value: '110101005000',
  438. children: [
  439. {
  440. text: '全部社区',
  441. value: '110101005000'
  442. },
  443. {
  444. text: '北官厅社区',
  445. value: '11110101000033478X01'
  446. },
  447. {
  448. text: '民安社区',
  449. value: '11110101000033478X02'
  450. },
  451. {
  452. text: '北新仓社区',
  453. value: '11110101000033478X03'
  454. },
  455. {
  456. text: '海运仓社区',
  457. value: '11110101000033478X04'
  458. }
  459. ]
  460. }
  461. ]
  462. },
  463. {
  464. text: '西城区',
  465. value: '110102000000',
  466. children: [
  467. {
  468. text: '全部街道',
  469. value: '110102000000',
  470. children: [
  471. {
  472. text: '全部社区',
  473. value: '110102000000'
  474. }
  475. ]
  476. },
  477. {
  478. text: '西城区白纸坊街道',
  479. value: '110102019000',
  480. children: [
  481. {
  482. text: '全部社区',
  483. value: '110102019000'
  484. }
  485. ]
  486. },
  487. {
  488. text: '西城区椿树街道',
  489. value: '110102015000',
  490. children: [
  491. {
  492. text: '全部社区',
  493. value: '110102015000'
  494. }
  495. ]
  496. },
  497. {
  498. text: '西城区大栅栏街道',
  499. value: '110102013000',
  500. children: [
  501. {
  502. text: '全部社区',
  503. value: '110102013000'
  504. }
  505. ]
  506. },
  507. {
  508. text: '西城区德胜街道',
  509. value: '110102010000',
  510. children: [
  511. {
  512. text: '全部社区',
  513. value: '110102010000'
  514. },
  515. {
  516. text: '石油社区',
  517. value: '1111010200003821X001'
  518. },
  519. {
  520. text: '水电社区',
  521. value: '1111010200003821X002'
  522. },
  523. {
  524. text: '煤炭社区',
  525. value: '1111010200003821X003'
  526. },
  527. {
  528. text: '安德路南社区',
  529. value: '1111010200003821X004'
  530. },
  531. {
  532. text: '安德路北社区',
  533. value: '1111010200003821X005'

  534. 本文名称:创新互联百度小程序教程:filter筛选
    分享地址:http://cdbrznjsb.com/article/djspphp.html
  • 网站建设专属方案

  • 网站定制化设计

  • 7X24小时服务

  • N对管家服务

让你的专属顾问为你服务