UNPKG

captain-ui

Version:

有赞vue wap业务组件库

114 lines (104 loc) 3.7 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = void 0; var _helper = _interopRequireDefault(require("@youzan/utils/url/helper")); var _makeDateStr = _interopRequireDefault(require("@youzan/utils/date/makeDateStr")); var _constants = require("./constants"); var _default = { render: function render() { var _vm = this; var _h = _vm.$createElement; var _c = _vm._self._c || _h; return _c('a', { staticClass: "paid-content__list-item", class: (_obj = {}, _obj["paid-content__list-item--" + (_vm.isText ? 'imgtext' : 'audio')] = true, _obj), attrs: { "href": _vm.contentUrl } }, [_c('div', { staticClass: "paid-content__img-wrap" }, [_c('img', { staticClass: "paid-content__item-img", attrs: { "src": _vm.imgUrl } })]), _c('div', { staticClass: "paid-content__item-detail" }, [_c('h4', { staticClass: "paid-content__item-title" }, [_vm._v(_vm._s(_vm.title))]), _c('p', { staticClass: "paid-content__item-summary" }, [_vm._v(_vm._s(_vm.summary))]), _c('p', { staticClass: "paid-content__subscription" }, [_vm._v("\n " + _vm._s(_vm.formatedPublishDate) + "\n ")]), _vm.hasBuy ? _c('span', { staticClass: "paid-content__price", class: { 'paid-content__price--purchased': _vm.hasBuy } }, [_vm._v("\n 已购买\n ")]) : _vm.isContentFree ? _c('span', { staticClass: "paid-content__price" }, [_vm._v("\n " + _vm._s(_vm.freeText) + "\n ")]) : [_c('span', { staticClass: "paid-content__price" }, [_vm._v("¥ " + _vm._s(_vm.formatedPrice))]), _vm.tagName ? _c('span', { staticClass: "paid-content__vip-price-tag" }, [_vm._v("\n " + _vm._s(_vm.tagName) + "\n "), _c('i', { staticClass: "paid-content__vip-price-tag-triangle" })]) : _vm._e()]], 2)]); var _obj; }, name: 'cap-paid-content-item', props: { summary: String, title: String, columnTitle: String, mediaType: { type: [Number, String], default: _constants.MEDIA_TYPE.IMAGE_TEXT }, baseUrl: { type: String, default: _constants.BASE_URL }, alias: String, kdtId: [Number, String], cover: String, publishAt: String, subscriptionsCount: Number, price: [Number, String], isFree: [Number, String], isGroupon: Boolean, grouponNum: [Number, String], discount: [Number, String], isVip: Boolean, hasBuy: Boolean }, computed: { isText: function isText() { return +this.mediaType === _constants.MEDIA_TYPE.IMAGE_TEXT; }, isContentFree: function isContentFree() { return +this.isFree === _constants.IS_FREE.FREE || parseInt(this.price) === 0; }, contentUrl: function contentUrl() { if (!this.kdtId || !this.alias) return 'javascript:;'; return this.baseUrl + "/ump/paidcontent?page=contentshow&alias=" + this.alias + "&kdt_id=" + this.kdtId; }, imgUrl: function imgUrl() { return _helper.default.getCdnImageUrl(this.cover, '!145x145.jpg'); }, formatedPublishDate: function formatedPublishDate() { return (0, _makeDateStr.default)(this.publishAt, 'MM-DD'); }, formatedPrice: function formatedPrice() { return (this.price / 100).toFixed(2); }, freeText: function freeText() { return this.isVip ? '会员免费' : '免费'; }, tagName: function tagName() { return this.isVip ? '会员价' : this.isGroupon ? this.grouponNum + "\u4EBA\u62FC\u56E2\u4EF7" : ''; } } }; exports.default = _default;