<template>
	<view
	    class="u-page"
	    ref="u-back-top"
	>
	<view class="u-demo-block">
		<text class="u-demo-block__title">自定义backTop(滚动页面即可在右下角看到图标)</text>
		<view class="u-demo-block__content">
			<view class="u-page__backTop-item">
				<u-checkbox-group
				    placement="column"
					shape="square"
				    @change="checkboxChange"
					v-model="value"
				>
					<u-checkbox
					    :customStyle="{marginBottom: '8px'}"
					    v-for="(item, index) in checkboxList"
					    :key="index"
					    :label="item.name"
					    :name="item.name"
					>
					</u-checkbox>
				</u-checkbox-group>
			</view>
		</view>
	</view>
		<u-back-top
		    :right="backTopData.right"
		    :customStyle="backTopData.customStyle"
		    :bottom="backTopData.bottom"
		    :icon="backTopData.icon"
		    :mode="backTopData.mode"
		    :iconStyle="backTopData.iconStyle"
			:duration="backTopData.duration"
		    :scrollTop="scrollTop"
			@click="click"
		></u-back-top>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				value: ['自定义图标'],
				backTopData: {
					mode: 'circle',
					icon: 'arrow-upward',
					bottom: 100,
					customStyle: {},
					iconStyle: {},
					right:20,
					duration: 300
				},
				scrollTop: 0,
				// 被自定义的样式
				checkboxList: [{
						name: '显示方形',
					},
					{
						name: '自定义图标',
					},
					{
						name: '自定义距离',
					},
					{
						name: '自定义样式',
					},
					{
						name:'自定义返回顶部滚动时间',
					}
				]
			}
		},
		onLoad() {
			// 演示中默认勾选了自定义图标
			this.backTopData.icon = "arrow-up"
		},
		onPageScroll(e) {
			this.scrollTop = e.scrollTop;
		},
		methods: {
			checkboxChange(n) {
				if (n.includes('显示方形')) {
					this.backTopData.mode = 'square'
				} else {
					this.backTopData.mode = "circle"
				}
				if (n.includes('自定义图标')) {
					this.backTopData.icon = "arrow-up"
				} else {
					this.backTopData.icon = "arrow-upward"
				}
				if (n.includes('自定义距离')) {
					this.backTopData.bottom = 300
					this.backTopData.right=20
				} else {
					this.backTopData.bottom = 100
				}
				if (n.includes('自定义样式')) {
					this.backTopData.customStyle = {
						backgroundColor: '#2979ff',
					}
					this.backTopData.iconStyle = {
						color: '#ffffff'
					}
				} else {
					this.backTopData.customStyle = {}
					this.backTopData.iconStyle = {}
				}
				if (n.includes('自定义返回顶部滚动时间')) {
					this.backTopData.duration =1500 
				} else {
					this.backTopData.duration =300
				}
			},
			click() {
				console.log('click');
			}
		}
	}
</script>

<style lang="scss">
	.u-page {
		height: 1200px;
		&__backTop-item{
			margin-top:10px;
		}
	}
</style>