Commit 3d813db7c2526e5b536c69a109e132dde71abc91
1 parent
91e1cbad
feat(plugin): add rate componnet; #!zh: 增加评分组件
Showing
2 changed files
with
102 additions
and
0 deletions
front-end/h5/src/components/plugins/lbp-rate.js
0 → 100644
| 1 | +/* | ||
| 2 | + * @Author: ly525 | ||
| 3 | + * @Date: 2020-05-17 20:04:23 | ||
| 4 | + * @LastEditors: ly525 | ||
| 5 | + * @LastEditTime: 2020-05-17 21:33:31 | ||
| 6 | + * @FilePath: /luban-h5/front-end/h5/src/components/plugins/lbp-rate.js | ||
| 7 | + * @Github: https://github.com/ly525/luban-h5 | ||
| 8 | + * @Description: Do not edit | ||
| 9 | + * @Copyright 2018 - 2019 luban-h5. All Rights Reserved | ||
| 10 | + */ | ||
| 11 | +import PropTypes from '@luban-h5/plugin-common-props' | ||
| 12 | +import { Rate } from 'vant' | ||
| 13 | +import 'vant/lib/rate/style' | ||
| 14 | +import 'vant/lib/icon/local.css' | ||
| 15 | + | ||
| 16 | +export default { | ||
| 17 | + name: 'lbp-rate', | ||
| 18 | + props: { | ||
| 19 | + value: PropTypes.number({ | ||
| 20 | + defaultValue: 5, | ||
| 21 | + label: '当前分值' | ||
| 22 | + }), | ||
| 23 | + count: PropTypes.number({ | ||
| 24 | + defaultValue: 5, | ||
| 25 | + label: '图标总数' | ||
| 26 | + }), | ||
| 27 | + size: PropTypes.number({ | ||
| 28 | + defaultValue: 16, | ||
| 29 | + label: '图标大小' | ||
| 30 | + }), | ||
| 31 | + gutter: PropTypes.number({ | ||
| 32 | + defaultValue: 16, | ||
| 33 | + label: '图标间距' | ||
| 34 | + }), | ||
| 35 | + mode: { | ||
| 36 | + type: String, | ||
| 37 | + default: '', | ||
| 38 | + editor: { | ||
| 39 | + type: 'a-select', | ||
| 40 | + label: '模式', | ||
| 41 | + props: { | ||
| 42 | + options: [ | ||
| 43 | + { | ||
| 44 | + label: 'star', | ||
| 45 | + value: 'star' | ||
| 46 | + }, | ||
| 47 | + { | ||
| 48 | + label: '点赞', | ||
| 49 | + value: 'like' | ||
| 50 | + }, | ||
| 51 | + { | ||
| 52 | + label: 'Good', | ||
| 53 | + value: 'good-job' | ||
| 54 | + } | ||
| 55 | + ] | ||
| 56 | + } | ||
| 57 | + } | ||
| 58 | + } | ||
| 59 | + }, | ||
| 60 | + componentsForPropsEditor: { | ||
| 61 | + }, | ||
| 62 | + mounted () { | ||
| 63 | + }, | ||
| 64 | + methods: { | ||
| 65 | + | ||
| 66 | + }, | ||
| 67 | + render () { | ||
| 68 | + return <Rate | ||
| 69 | + value={this.value} | ||
| 70 | + count={this.count} | ||
| 71 | + size={this.size} | ||
| 72 | + color={this.color} | ||
| 73 | + gutter={this.gutter} | ||
| 74 | + void-icon="star" | ||
| 75 | + void-color="#eee" | ||
| 76 | + /> | ||
| 77 | + } | ||
| 78 | +} |
front-end/h5/src/mixins/load-plugins.js
| @@ -12,6 +12,8 @@ import LbpBackground from '../components/plugins/lbp-background' | @@ -12,6 +12,8 @@ import LbpBackground from '../components/plugins/lbp-background' | ||
| 12 | import LbpSlide from '../components/plugins/lbp-slide' | 12 | import LbpSlide from '../components/plugins/lbp-slide' |
| 13 | import LbpBgMusic from '../components/plugins/lbp-bg-music' | 13 | import LbpBgMusic from '../components/plugins/lbp-bg-music' |
| 14 | import LbpNoticeBar from '../components/plugins/lbp-notice-bar' | 14 | import LbpNoticeBar from '../components/plugins/lbp-notice-bar' |
| 15 | +import LbpRate from '../components/plugins/lbp-rate' | ||
| 16 | +// import LbpTabs from '../components/plugins/lbp-tabs' | ||
| 15 | 17 | ||
| 16 | export const pluginsList = [ | 18 | export const pluginsList = [ |
| 17 | { | 19 | { |
| @@ -25,6 +27,28 @@ export const pluginsList = [ | @@ -25,6 +27,28 @@ export const pluginsList = [ | ||
| 25 | visible: true, | 27 | visible: true, |
| 26 | name: LbpNoticeBar.name | 28 | name: LbpNoticeBar.name |
| 27 | }, | 29 | }, |
| 30 | + // { | ||
| 31 | + // title: '标签页', | ||
| 32 | + // i18nTitle: { | ||
| 33 | + // 'en-US': 'Tabs', | ||
| 34 | + // 'zh-CN': '标签页' | ||
| 35 | + // }, | ||
| 36 | + // icon: 'tab', | ||
| 37 | + // component: LbpTabs, | ||
| 38 | + // visible: true, | ||
| 39 | + // name: LbpTabs.name | ||
| 40 | + // }, | ||
| 41 | + { | ||
| 42 | + title: '评分', | ||
| 43 | + i18nTitle: { | ||
| 44 | + 'en-US': 'Rate', | ||
| 45 | + 'zh-CN': '评分' | ||
| 46 | + }, | ||
| 47 | + icon: 'star-o', | ||
| 48 | + component: LbpRate, | ||
| 49 | + visible: true, | ||
| 50 | + name: LbpRate.name | ||
| 51 | + }, | ||
| 28 | { | 52 | { |
| 29 | title: '图片', | 53 | title: '图片', |
| 30 | i18nTitle: { | 54 | i18nTitle: { |