| | |
| | | |
| | | <template> |
| | | <view class="c-content"> |
| | | <slot /> |
| | | <view |
| | | class="c-content-inner" |
| | | v-if="scroll==='off'" |
| | | > |
| | | <slot /> |
| | | </view> |
| | | <scroll-view |
| | | class="c-content-scroll" |
| | | v-if="scroll==='on'" |
| | | :scrollY="true" |
| | | :scroll-top="scrollTop" |
| | | :scroll-with-animation="true" |
| | | ref="scrollor" |
| | | @scroll="evt => handleScroll(evt)" |
| | | > |
| | | <slot /> |
| | | </scroll-view> |
| | | </view> |
| | | </template> |
| | | |
| | | <script> |
| | | export default { |
| | | name: 'CContent', |
| | | props: { |
| | | // 开启滚动,off / on |
| | | scroll: { |
| | | type: String, |
| | | default: 'off', |
| | | }, |
| | | }, |
| | | data() { |
| | | return { |
| | | scrollTop: '', |
| | | }; |
| | | }, |
| | | methods: { |
| | | handleScroll(evt) { |
| | | this.scrollTop = evt.target.scrollTop; |
| | | }, |
| | | $scrollTop(top) { |
| | | if (this.scroll === 'off') { |
| | | return; |
| | | } |
| | | this.scrollTop = top || 0; |
| | | }, |
| | | }, |
| | | }; |
| | | </script> |