| | |
| | | <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" scoped> |
| | | .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> |
| | | <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" scoped>
|
| | | .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>
|