| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 | 
							- <template>
 
- 	<!-- #ifdef APP-NVUE -->
 
- 	<cell>
 
- 		<!-- #endif -->
 
- 		<view class="uni-list-ad">
 
- 			<view v-if="borderShow" :class="{'uni-list--border':border,'uni-list-item--first':isFirstChild}"></view>
 
- 			<ad style="width: 200px;height: 300px;border-width: 1px;border-color: red;border-style: solid;" adpid="1111111111"
 
- 			 unit-id="" appid="" apid="" type="feed" @error="aderror" @close="closeAd"></ad>
 
- 		</view>
 
- 		<!-- #ifdef APP-NVUE -->
 
- 	</cell>
 
- 	<!-- #endif -->
 
- </template>
 
- <script>
 
- 	// #ifdef APP-NVUE
 
- 	const dom = uni.requireNativePlugin('dom');
 
- 	// #endif
 
- 	export default {
 
- 		name: 'UniListAd',
 
- 		props: {
 
- 			title: {
 
- 				type: String,
 
- 				default: '',
 
- 			}
 
- 		},
 
- 		// inject: ['list'],
 
- 		data() {
 
- 			return {
 
- 				isFirstChild: false,
 
- 				border: false,
 
- 				borderShow: true,
 
- 			}
 
- 		},
 
- 		mounted() {
 
- 			this.list = this.getForm()
 
- 			if (this.list) {
 
- 				if (!this.list.firstChildAppend) {
 
- 					this.list.firstChildAppend = true
 
- 					this.isFirstChild = true
 
- 				}
 
- 				this.border = this.list.border
 
- 			}
 
- 		},
 
- 		methods: {
 
- 			/**
 
- 			 * 获取父元素实例
 
- 			 */
 
- 			getForm(name = 'uniList') {
 
- 				let parent = this.$parent;
 
- 				let parentName = parent.$options.name;
 
- 				while (parentName !== name) {
 
- 					parent = parent.$parent;
 
- 					if (!parent) return false
 
- 					parentName = parent.$options.name;
 
- 				}
 
- 				return parent;
 
- 			},
 
- 			aderror(e) {
 
- 				console.log("aderror: " + JSON.stringify(e.detail));
 
- 			},
 
- 			closeAd(e) {
 
- 				this.borderShow = false
 
- 			}
 
- 		}
 
- 	}
 
- </script>
 
- <style lang="scss" >
 
- 	.uni-list-ad {
 
- 		position: relative;
 
- 		border: 1px red solid;
 
- 	}
 
- 	.uni-list--border {
 
- 		position: relative;
 
- 		padding-bottom: 1px;
 
- 		/* #ifdef APP-PLUS */
 
- 		border-top-color: $uni-border-color;
 
- 		border-top-style: solid;
 
- 		border-top-width: 0.5px;
 
- 		/* #endif */
 
- 		margin-left: $uni-spacing-row-lg;
 
- 	}
 
- 	/* #ifndef APP-NVUE */
 
- 	.uni-list--border:after {
 
- 		position: absolute;
 
- 		top: 0;
 
- 		right: 0;
 
- 		left: 0;
 
- 		height: 1px;
 
- 		content: '';
 
- 		-webkit-transform: scaleY(.5);
 
- 		transform: scaleY(.5);
 
- 		background-color: $uni-border-color;
 
- 	}
 
- 	.uni-list-item--first:after {
 
- 		height: 0px;
 
- 	}
 
- 	/* #endif */
 
- </style>
 
 
  |