您好,登錄后才能下訂單哦!
這篇文章將為大家詳細(xì)講解有關(guān)使用vue如何實(shí)現(xiàn)掃雷游戲,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
上班閑來沒事做,,心血來潮。想用剛學(xué)的vue,寫一個(gè)掃雷游戲。。好了,直入正題.
第一步,先制作一個(gè)10x10的格子圖。。這個(gè)pcss就不說了。。大家都會(huì)。
第二步,制造一個(gè)數(shù)組,用來生成隨機(jī)雷區(qū)。
let arr = [] for (var i = 0; i < 10; i++) { arr.push(Math.floor(Math.random() * 100)) }
第三步,制造一個(gè)json數(shù)組,讓他循環(huán)生成頁(yè)面上的格子。
let arrs = [] for (var j = 0; j < 100; j++) { let obj = {} if (arr.indexOf(j) > -1) { obj.isLei = true // 是否是地雷 } else { obj.isLei = false // 是否是地雷 } obj.id = j obj.isTrue = false // 安全區(qū)樣式 obj.isFalse = false // 雷區(qū)樣式 arrs.push(obj) }
大概是這樣子的數(shù)據(jù)
第四步,點(diǎn)擊格子,觸發(fā)事件。判斷是否這個(gè)是雷區(qū)。如果安全就顯示綠色,否則顯示紅色。
toclick (e) { console.log(e.isTrue) if (e.isLei === true) { e.isFalse = true } else { e.isTrue = true this.surPlus = this.surPlus - 1 } }
以下是所有代碼:
<script> export default{ data () { return { lattice: null, // 100個(gè)格子 surPlus: 90 // 安全區(qū)。。因?yàn)槭?0個(gè)雷。所以就是100-10 = 90 } }, methods: { toclick (e) { console.log(e.isTrue) if (e.isLei === true) { e.isFalse = true } else { e.isTrue = true this.surPlus = this.surPlus - 1 } }, random () { let arr = [] for (var i = 0; i < 10; i++) { arr.push(Math.floor(Math.random() * 100)) } let arrs = [] for (var j = 0; j < 100; j++) { let obj = {} if (arr.indexOf(j) > -1) { obj.isLei = true // 是否是地雷 } else { obj.isLei = false // 是否是地雷 } obj.id = j obj.isTrue = false // 安全區(qū)樣式 obj.isFalse = false // 雷區(qū)樣式 arrs.push(obj) } this.lattice = arrs console.log(arrs) } }, mounted () { this.random() } } </script> <template> <div class="page"> <div class="bg"> <div v-for="item in lattice" class="lattice" :class="{ 'security' : item.isTrue , 'danger': item.isFalse }" :key="item.id" @click="toclick(item)"></div> </div> <div class="surplus">剩余{{surPlus}}個(gè)安全格子</div> </div> </template> <style scoped> .page{ overflow: hidden; } .bg{ border:1px solid #000; width:600px; height:600px; margin:20px auto; } .lattice{ border: 1px solid #ccc; box-sizing: border-box; float:left; width:60px; height:60px; } .surplus{ line-height: 38px; height:38px; width:150px; margin:0 auto; } .security{ background-color: green; } .danger{ background-color: red; } </style>
最后樣子大概就是這樣:
關(guān)于使用vue如何實(shí)現(xiàn)掃雷游戲就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。