UNPKG

captain-ui

Version:

有赞vue wap业务组件库

84 lines (81 loc) 2.79 kB
import UrlHelper from '@youzan/utils/url/helper'; import { BASE_URL, MEDIA_TYPE, IS_FREE } from './constants'; export default { render: function render() { var _vm = this; var _h = _vm.$createElement; var _c = _vm._self._c || _h; return _c('a', { staticClass: "paid-member__list-item", attrs: { "href": _vm.jumpUrl } }, [_c('div', { staticClass: "paid-member__img-wrap" }, [_c('img', { staticClass: "paid-member__item-img", attrs: { "src": _vm.imgUrl } })]), _c('div', { staticClass: "paid-member__item-detail" }, [_c('h4', { staticClass: "paid-member__item-title" }, [_vm._v(_vm._s(_vm.title))]), _c('p', { staticClass: "paid-member__item-summary" }, [_vm._v(_vm._s(_vm.summary))]), _c('p', { staticClass: "paid-member__subscription" }, [_c('span', [_vm._v("已更新" + _vm._s(_vm.contentsCount) + "期")]), _vm.subscriptionsCount ? _c('span', { staticClass: "paid-member__subscription-divider" }, [_vm._v("\n |\n ")]) : _vm._e(), _vm.subscriptionsCount ? _c('span', [_vm._v(_vm._s(_vm.subscriptionsCount) + "人已购")]) : _vm._e()]), _vm.hasBuy ? _c('span', { staticClass: "paid-member__price", class: { 'paid-member__price--purchased': _vm.hasBuy } }, [_vm._v("\n 已购买\n ")]) : !_vm.isMemberFree ? _c('span', { staticClass: "paid-member__price" }, [_vm._v("\n ¥ " + _vm._s(_vm.formatedPrice) + "\n ")]) : _c('span', { staticClass: "paid-member__price" }, [_vm._v("\n " + _vm._s(_vm.freeText) + "\n ")])])]); }, name: 'cap-paid-member-item', props: { title: String, summary: String, contentsCount: Number, columnTitle: String, mediaType: { type: [Number, String], default: MEDIA_TYPE.IMAGE_TEXT }, baseUrl: { type: String, default: BASE_URL }, alias: String, kdtId: [Number, String], cover: String, subscriptionsCount: Number, price: [Number, String], isFree: [Number, String], hasBuy: Boolean }, computed: { isMemberFree: function isMemberFree() { return +this.isFree === IS_FREE.FREE || parseInt(this.price) === 0; }, jumpUrl: function jumpUrl() { if (!this.kdtId || !this.alias) return 'javascript:;'; return this.baseUrl + "/ump/paidcontent/index?page=vipbenefit&alias=" + this.alias + "&kdt_id=" + this.kdtId; }, imgUrl: function imgUrl() { return UrlHelper.getCdnImageUrl(this.cover, '!145x145.jpg'); }, formatedPrice: function formatedPrice() { return (this.price / 100).toFixed(2); }, freeText: function freeText() { return this.isVip ? '会员免费' : '免费'; } } };