mirror of
https://gitee.com/vant-contrib/vant.git
synced 2025-04-06 03:57:59 +08:00
refactor(Sku): rename largePicturePreview to largeImageMode
This commit is contained in:
parent
38c327d47a
commit
ada23d9ebe
@ -204,7 +204,7 @@ sku: {
|
|||||||
previewImgUrl: 'https://img.yzcdn.cn/2p.jpg',
|
previewImgUrl: 'https://img.yzcdn.cn/2p.jpg',
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
large_picture_preview: true, // Whether to display large image mode
|
largeImageMode: true, // whether to enable large image mode
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
list: [
|
list: [
|
||||||
|
@ -212,7 +212,7 @@ sku: {
|
|||||||
previewImgUrl: 'https://img.yzcdn.cn/2p.jpg',
|
previewImgUrl: 'https://img.yzcdn.cn/2p.jpg',
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
large_picture_preview: true, // 是否展示大图模式
|
largeImageMode: true, // 是否展示大图模式
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
// 所有 sku 的组合列表,比如红色、M 码为一个 sku 组合,红色、S 码为另一个组合
|
// 所有 sku 的组合列表,比如红色、M 码为一个 sku 组合,红色、S 码为另一个组合
|
||||||
|
@ -680,13 +680,13 @@ export default createComponent({
|
|||||||
{this.skuTree.map((skuTreeItem) => (
|
{this.skuTree.map((skuTreeItem) => (
|
||||||
<SkuRow
|
<SkuRow
|
||||||
skuRow={skuTreeItem}
|
skuRow={skuTreeItem}
|
||||||
largePicturePreview={skuTreeItem.large_picture_preview}
|
largeImageMode={skuTreeItem.largeImageMode}
|
||||||
hasScrollTab={skuTreeItem.v.length > 6}
|
hasScrollTab={skuTreeItem.v.length > 6}
|
||||||
>
|
>
|
||||||
{skuTreeItem.v.map((skuValue, itemIndex) => (
|
{skuTreeItem.v.map((skuValue, itemIndex) => (
|
||||||
<template
|
<template
|
||||||
slot={
|
slot={
|
||||||
skuTreeItem.large_picture_preview
|
skuTreeItem.largeImageMode
|
||||||
? Math.floor(itemIndex / 3) % 2 === 0
|
? Math.floor(itemIndex / 3) % 2 === 0
|
||||||
? 'sku-item-group-one'
|
? 'sku-item-group-one'
|
||||||
: 'sku-item-group-two'
|
: 'sku-item-group-two'
|
||||||
@ -700,7 +700,7 @@ export default createComponent({
|
|||||||
skuKeyStr={skuTreeItem.k_s}
|
skuKeyStr={skuTreeItem.k_s}
|
||||||
selectedSku={selectedSku}
|
selectedSku={selectedSku}
|
||||||
skuEventBus={skuEventBus}
|
skuEventBus={skuEventBus}
|
||||||
largePicturePreview={skuTreeItem.large_picture_preview}
|
largeImageMode={skuTreeItem.largeImageMode}
|
||||||
></SkuRowItem>
|
></SkuRowItem>
|
||||||
</template>
|
</template>
|
||||||
))}
|
))}
|
||||||
|
@ -8,7 +8,7 @@ const [createComponent, bem, t] = createNamespace('sku-row');
|
|||||||
export default createComponent({
|
export default createComponent({
|
||||||
mixins: [
|
mixins: [
|
||||||
BindEventMixin(function (bind) {
|
BindEventMixin(function (bind) {
|
||||||
if (!(this.largePicturePreview && this.hasScrollTab)) {
|
if (!(this.largeImageMode && this.hasScrollTab)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -21,7 +21,7 @@ export default createComponent({
|
|||||||
],
|
],
|
||||||
props: {
|
props: {
|
||||||
skuRow: Object,
|
skuRow: Object,
|
||||||
largePicturePreview: {
|
largeImageMode: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: false,
|
default: false,
|
||||||
},
|
},
|
||||||
@ -40,7 +40,7 @@ export default createComponent({
|
|||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
scrollStyle() {
|
scrollStyle() {
|
||||||
if (!(this.largePicturePreview && this.hasScrollTab)) {
|
if (!(this.largeImageMode && this.hasScrollTab)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
this.tranX = this.present * 20;
|
this.tranX = this.present * 20;
|
||||||
@ -60,7 +60,7 @@ export default createComponent({
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
render() {
|
render() {
|
||||||
const { skuRow, largePicturePreview, hasScrollTab } = this;
|
const { skuRow, largeImageMode, hasScrollTab } = this;
|
||||||
const multipleNode = skuRow.is_multiple && (
|
const multipleNode = skuRow.is_multiple && (
|
||||||
<span class={bem('title-multiple')}>({t('multiple')})</span>
|
<span class={bem('title-multiple')}>({t('multiple')})</span>
|
||||||
);
|
);
|
||||||
@ -86,15 +86,13 @@ export default createComponent({
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
return (
|
return (
|
||||||
<div
|
<div class={[bem(), BORDER_BOTTOM, largeImageMode && bem('picture')]}>
|
||||||
class={[bem(), BORDER_BOTTOM, largePicturePreview && bem('picture')]}
|
|
||||||
>
|
|
||||||
<div class={bem('title')}>
|
<div class={bem('title')}>
|
||||||
{skuRow.k}
|
{skuRow.k}
|
||||||
{multipleNode}
|
{multipleNode}
|
||||||
</div>
|
</div>
|
||||||
{largePicturePreview ? SkuContent : this.slots()}
|
{largeImageMode ? SkuContent : this.slots()}
|
||||||
{largePicturePreview && hasScrollTab && SkuScroll}
|
{largeImageMode && hasScrollTab && SkuScroll}
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
|
@ -10,7 +10,7 @@ export default createComponent({
|
|||||||
skuKeyStr: String,
|
skuKeyStr: String,
|
||||||
skuEventBus: Object,
|
skuEventBus: Object,
|
||||||
selectedSku: Object,
|
selectedSku: Object,
|
||||||
largePicturePreview: Boolean,
|
largeImageMode: Boolean,
|
||||||
skuList: {
|
skuList: {
|
||||||
type: Array,
|
type: Array,
|
||||||
default: () => [],
|
default: () => [],
|
||||||
@ -20,7 +20,7 @@ export default createComponent({
|
|||||||
computed: {
|
computed: {
|
||||||
imgUrl() {
|
imgUrl() {
|
||||||
const url = this.skuValue.imgUrl || this.skuValue.img_url;
|
const url = this.skuValue.imgUrl || this.skuValue.img_url;
|
||||||
return this.largePicturePreview
|
return this.largeImageMode
|
||||||
? url ||
|
? url ||
|
||||||
'https://img.yzcdn.cn/upload_files/2020/06/24/FmKWDg0bN9rMcTp9ne8MXiQWGtLn.png'
|
'https://img.yzcdn.cn/upload_files/2020/06/24/FmKWDg0bN9rMcTp9ne8MXiQWGtLn.png'
|
||||||
: url;
|
: url;
|
||||||
@ -52,7 +52,7 @@ export default createComponent({
|
|||||||
genImage(classPrefix) {
|
genImage(classPrefix) {
|
||||||
const { imgUrl } = this;
|
const { imgUrl } = this;
|
||||||
if (imgUrl) {
|
if (imgUrl) {
|
||||||
if (this.largePicturePreview && this.lazyLoad) {
|
if (this.largeImageMode && this.lazyLoad) {
|
||||||
return (
|
return (
|
||||||
<img class={`${classPrefix}-img`} src={imgUrl} vLazy={imgUrl} />
|
<img class={`${classPrefix}-img`} src={imgUrl} vLazy={imgUrl} />
|
||||||
);
|
);
|
||||||
@ -65,7 +65,7 @@ export default createComponent({
|
|||||||
|
|
||||||
render() {
|
render() {
|
||||||
const choosed = this.skuValue.id === this.selectedSku[this.skuKeyStr];
|
const choosed = this.skuValue.id === this.selectedSku[this.skuKeyStr];
|
||||||
const classPrefix = this.largePicturePreview
|
const classPrefix = this.largeImageMode
|
||||||
? 'van-sku-row__picture-item'
|
? 'van-sku-row__picture-item'
|
||||||
: 'van-sku-row__item';
|
: 'van-sku-row__item';
|
||||||
|
|
||||||
@ -78,7 +78,7 @@ export default createComponent({
|
|||||||
]}
|
]}
|
||||||
onClick={this.onSelect}
|
onClick={this.onSelect}
|
||||||
>
|
>
|
||||||
{this.largePicturePreview && (
|
{this.largeImageMode && (
|
||||||
<img
|
<img
|
||||||
class={`${classPrefix}-img-icon`}
|
class={`${classPrefix}-img-icon`}
|
||||||
src="https://img.yzcdn.cn/upload_files/2020/06/18/Fn6Qf0fGRFyuD8xh0Gi1w2ng59G1.png"
|
src="https://img.yzcdn.cn/upload_files/2020/06/18/Fn6Qf0fGRFyuD8xh0Gi1w2ng59G1.png"
|
||||||
@ -87,9 +87,7 @@ export default createComponent({
|
|||||||
)}
|
)}
|
||||||
{this.genImage(classPrefix)}
|
{this.genImage(classPrefix)}
|
||||||
<div class={`${classPrefix}-name`}>
|
<div class={`${classPrefix}-name`}>
|
||||||
<span
|
<span class={this.largeImageMode ? 'van-multi-ellipsis--l2' : ''}>
|
||||||
class={this.largePicturePreview ? 'van-multi-ellipsis--l2' : ''}
|
|
||||||
>
|
|
||||||
{this.skuValue.name}
|
{this.skuValue.name}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
export function getSkuData(large_picture_preview = false) {
|
export function getSkuData(largeImageMode = false) {
|
||||||
return {
|
return {
|
||||||
goods_id: '1',
|
goods_id: '1',
|
||||||
quota: 5,
|
quota: 5,
|
||||||
@ -37,7 +37,7 @@ export function getSkuData(large_picture_preview = false) {
|
|||||||
imgUrl: 'https://b.yzcdn.cn/vant/sku/shoes-3.png',
|
imgUrl: 'https://b.yzcdn.cn/vant/sku/shoes-3.png',
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
large_picture_preview,
|
largeImageMode,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
k: '尺寸',
|
k: '尺寸',
|
||||||
|
@ -79,7 +79,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</demo-block>
|
</demo-block>
|
||||||
|
|
||||||
<demo-block :title="t('largePicturePreview')">
|
<demo-block :title="t('largeImageMode')">
|
||||||
<div class="sku-container">
|
<div class="sku-container">
|
||||||
<van-sku
|
<van-sku
|
||||||
v-model="showLargePicturePreview"
|
v-model="showLargePicturePreview"
|
||||||
@ -108,7 +108,7 @@
|
|||||||
type="primary"
|
type="primary"
|
||||||
@click="showLargePicturePreview = true"
|
@click="showLargePicturePreview = true"
|
||||||
>
|
>
|
||||||
{{ t('largePicturePreview') }}
|
{{ t('largeImageMode') }}
|
||||||
</van-button>
|
</van-button>
|
||||||
</div>
|
</div>
|
||||||
</demo-block>
|
</demo-block>
|
||||||
@ -188,7 +188,7 @@ export default {
|
|||||||
customBySlot: '通过插槽定制',
|
customBySlot: '通过插槽定制',
|
||||||
customStepper: '自定义步进器',
|
customStepper: '自定义步进器',
|
||||||
hideSoldoutSku: '隐藏售罄规格',
|
hideSoldoutSku: '隐藏售罄规格',
|
||||||
largePicturePreview: '大图预览模式',
|
largeImageMode: '大图预览模式',
|
||||||
},
|
},
|
||||||
'en-US': {
|
'en-US': {
|
||||||
button1: 'Button',
|
button1: 'Button',
|
||||||
@ -198,7 +198,7 @@ export default {
|
|||||||
stepperTitle: 'Stepper title',
|
stepperTitle: 'Stepper title',
|
||||||
customStepper: 'Custom Stepper',
|
customStepper: 'Custom Stepper',
|
||||||
hideSoldoutSku: 'Hide Soldout Sku',
|
hideSoldoutSku: 'Hide Soldout Sku',
|
||||||
largePicturePreview: 'Large Picture Preview',
|
largeImageMode: 'Large Image Mode',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user