1
1
<template >
2
2
<div class =" header" >
3
- <select v-model =" yao[5]" >
3
+ <select v-model =" yao[5]" @change = " main() " >
4
4
<option disabled value =" -1" >第一次</option >
5
5
<option v-for =" i in 4" :value =" i-1" >{{i-1}} 字</option >
6
6
</select >
7
- <select v-model =" yao[4]" :disabled =" yao[5]<0" >
7
+ <select v-model =" yao[4]" @change = " main() " :disabled =" yao[5]<0" >
8
8
<option disabled value =" -1" >第二次</option >
9
9
<option v-for =" i in 4" :value =" i-1" >{{i-1}} 字</option >
10
10
</select >
11
- <select v-model =" yao[3]" :disabled =" yao[4]<0" >
11
+ <select v-model =" yao[3]" @change = " main() " :disabled =" yao[4]<0" >
12
12
<option disabled value =" -1" >第三次</option >
13
13
<option v-for =" i in 4" :value =" i-1" >{{i-1}} 字</option >
14
14
</select >
15
- <select v-model =" yao[2]" :disabled =" yao[3]<0" >
15
+ <select v-model =" yao[2]" @change = " main() " :disabled =" yao[3]<0" >
16
16
<option disabled value =" -1" >第四次</option >
17
17
<option v-for =" i in 4" :value =" i-1" >{{i-1}} 字</option >
18
18
</select >
19
- <select v-model =" yao[1]" :disabled =" yao[2]<0" >
19
+ <select v-model =" yao[1]" @change = " main() " :disabled =" yao[2]<0" >
20
20
<option disabled value =" -1" >第五次</option >
21
21
<option v-for =" i in 4" :value =" i-1" >{{i-1}} 字</option >
22
22
</select >
23
- <select v-model =" yao[0]" :disabled =" yao[1]<0" @change = " main() " >
23
+ <select v-model =" yao[0]" @change = " main() " :disabled =" yao[1]<0" >
24
24
<option disabled value =" -1" >第六次</option >
25
25
<option v-for =" i in 4" :value =" i-1" >{{i-1}} 字</option >
26
26
</select >
49
49
50
50
<script setup>
51
51
import { ref } from ' vue'
52
- import { WU_XING } from ' ../assets/constant.js'
52
+ import { BA_GUA_MAP , WU_XING } from ' ../assets/constant.js'
53
53
54
- const gua8 = {
55
- ' 111' : ' 乾' , ' 010' : ' 坎' , ' 100' : ' 艮' , ' 001' : ' 震' , ' 110' : ' 巽' , ' 101' : ' 离' , ' 000' : ' 坤' , ' 011' : ' 兑'
56
- }
57
54
const gua64 = [
58
55
' 乾乾-乾卦' , ' 乾巽-天风姤' , ' 乾艮-天山遁' , ' 乾坤-天地否' , ' 巽坤-风地观' , ' 艮坤-山地剥' , ' 离坤-火地晋' , ' 离乾-火天大有' ,
59
56
' 坎坎-坎卦' , ' 坎兑-水泽节' , ' 坎震-水雷屯' , ' 坎离-水火既济' , ' 兑离-泽火革' , ' 震离-雷火丰' , ' 坤离-地火明夷' , ' 坤坎-地水师' ,
@@ -76,16 +73,19 @@ const shiYing = ref(['', '', '', '', '', ''])
76
73
const yao = ref ([- 1 , - 1 , - 1 , - 1 , - 1 , - 1 ])
77
74
78
75
function main () {
76
+ benGua .value = []
77
+ bianGua .value = []
79
78
for (const i of yao .value ) {
80
- if (i === 0 ) { benGua .value .push (1 ); bianGua .value .push (0 ) }
79
+ if (i === - 1 ) return
80
+ else if (i === 0 ) { benGua .value .push (1 ); bianGua .value .push (0 ) }
81
81
else if (i === 1 ) { benGua .value .push (0 ); bianGua .value .push (0 ) }
82
82
else if (i === 2 ) { benGua .value .push (1 ); bianGua .value .push (1 ) }
83
83
else if (i === 3 ) { benGua .value .push (0 ); bianGua .value .push (1 ) }
84
84
}
85
- const benShangGua = gua8 [benGua .value .slice (0 , 3 ).join (' ' )]
86
- const benXiaGua = gua8 [benGua .value .slice (3 , 6 ).join (' ' )]
87
- const bianShangGua = gua8 [bianGua .value .slice (0 , 3 ).join (' ' )]
88
- const bianXiaGua = gua8 [bianGua .value .slice (3 , 6 ).join (' ' )]
85
+ const benShangGua = BA_GUA_MAP [benGua .value .slice (0 , 3 ).join (' ' )]
86
+ const benXiaGua = BA_GUA_MAP [benGua .value .slice (3 , 6 ).join (' ' )]
87
+ const bianShangGua = BA_GUA_MAP [bianGua .value .slice (0 , 3 ).join (' ' )]
88
+ const bianXiaGua = BA_GUA_MAP [bianGua .value .slice (3 , 6 ).join (' ' )]
89
89
const guaGongIndex = gua64 .findIndex (i => i .indexOf (benShangGua + benXiaGua) === 0 )
90
90
const guaGongWuXing = WU_XING [gua64[guaGongIndex - guaGongIndex % 8 ][0 ]]
91
91
switch (guaGongIndex % 8 ) {
@@ -127,10 +127,10 @@ const NA_JIA = {
127
127
128
128
<style scoped>
129
129
.header {
130
- select , button , span {
131
- margin : 10px ;
132
- font-size : 18px ;
133
- }
130
+ select , button , span {
131
+ margin : 10px ;
132
+ font-size : 18px ;
133
+ }
134
134
}
135
135
136
136
p {
0 commit comments