整理した
This commit is contained in:
		
							
								
								
									
										109
									
								
								src/client/app/desktop/views/components/ui.header.clock.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										109
									
								
								src/client/app/desktop/views/components/ui.header.clock.vue
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,109 @@ | ||||
| <template> | ||||
| <div class="clock"> | ||||
| 	<div class="header"> | ||||
| 		<time ref="time"> | ||||
| 			<span class="yyyymmdd">{{ yyyy }}/{{ mm }}/{{ dd }}</span> | ||||
| 			<br> | ||||
| 			<span class="hhnn">{{ hh }}<span :style="{ visibility: now.getSeconds() % 2 == 0 ? 'visible' : 'hidden' }">:</span>{{ nn }}</span> | ||||
| 		</time> | ||||
| 	</div> | ||||
| 	<div class="content"> | ||||
| 		<mk-analog-clock/> | ||||
| 	</div> | ||||
| </div> | ||||
| </template> | ||||
|  | ||||
| <script lang="ts"> | ||||
| import Vue from 'vue'; | ||||
|  | ||||
| export default Vue.extend({ | ||||
| 	data() { | ||||
| 		return { | ||||
| 			now: new Date(), | ||||
| 			clock: null | ||||
| 		}; | ||||
| 	}, | ||||
| 	computed: { | ||||
| 		yyyy(): number { | ||||
| 			return this.now.getFullYear(); | ||||
| 		}, | ||||
| 		mm(): string { | ||||
| 			return ('0' + (this.now.getMonth() + 1)).slice(-2); | ||||
| 		}, | ||||
| 		dd(): string { | ||||
| 			return ('0' + this.now.getDate()).slice(-2); | ||||
| 		}, | ||||
| 		hh(): string { | ||||
| 			return ('0' + this.now.getHours()).slice(-2); | ||||
| 		}, | ||||
| 		nn(): string { | ||||
| 			return ('0' + this.now.getMinutes()).slice(-2); | ||||
| 		} | ||||
| 	}, | ||||
| 	mounted() { | ||||
| 		this.tick(); | ||||
| 		this.clock = setInterval(this.tick, 1000); | ||||
| 	}, | ||||
| 	beforeDestroy() { | ||||
| 		clearInterval(this.clock); | ||||
| 	}, | ||||
| 	methods: { | ||||
| 		tick() { | ||||
| 			this.now = new Date(); | ||||
| 		} | ||||
| 	} | ||||
| }); | ||||
| </script> | ||||
|  | ||||
| <style lang="stylus" scoped> | ||||
| .clock | ||||
| 	display inline-block | ||||
| 	overflow visible | ||||
|  | ||||
| 	> .header | ||||
| 		padding 0 12px | ||||
| 		text-align center | ||||
| 		font-size 10px | ||||
|  | ||||
| 		&, * | ||||
| 			cursor: default | ||||
|  | ||||
| 		&:hover | ||||
| 			background #899492 | ||||
|  | ||||
| 			& + .content | ||||
| 				visibility visible | ||||
|  | ||||
| 			> time | ||||
| 				color #fff !important | ||||
|  | ||||
| 				* | ||||
| 					color #fff !important | ||||
|  | ||||
| 		&:after | ||||
| 			content "" | ||||
| 			display block | ||||
| 			clear both | ||||
|  | ||||
| 		> time | ||||
| 			display table-cell | ||||
| 			vertical-align middle | ||||
| 			height 48px | ||||
| 			color #9eaba8 | ||||
|  | ||||
| 			> .yyyymmdd | ||||
| 				opacity 0.7 | ||||
|  | ||||
| 	> .content | ||||
| 		visibility hidden | ||||
| 		display block | ||||
| 		position absolute | ||||
| 		top auto | ||||
| 		right 0 | ||||
| 		z-index 3 | ||||
| 		margin 0 | ||||
| 		padding 0 | ||||
| 		width 256px | ||||
| 		background #899492 | ||||
|  | ||||
| </style> | ||||
		Reference in New Issue
	
	Block a user
	 syuilo
					syuilo