国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【學(xué)Vue就跟玩一樣】學(xué)習(xí)vue就像打游戲一樣簡單

這篇具有很好參考價值的文章主要介紹了【學(xué)Vue就跟玩一樣】學(xué)習(xí)vue就像打游戲一樣簡單。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

目錄

前言

一,初入Vue大陸

1.Vue的初體驗

1.Vue的特點

2.引入vue

3.可能出現(xiàn)的問題

4.創(chuàng)建Vue實例

5.模板語法

6.數(shù)據(jù)綁定

7.連接容器的方法

8.data的寫法

二,MVVM模型

三,數(shù)據(jù)代理

1.對數(shù)據(jù)進行讀取和修改

?2.事件修飾符

3.鍵盤事件

最后


?文章來源地址http://www.zghlxwxcb.cn/news/detail-481612.html

前言

??對于看到這篇文章的小伙伴呢!肯定是即將到達(dá)四周目Vue篇了吧,從此刻開始正式踏入Vue篇,內(nèi)容絕對真實有效,本欄會細(xì)致的將Vue劃分為兩大模塊,基礎(chǔ)篇,進階篇。想要順利通關(guān)vue篇首先要擁有三劍客,當(dāng)然其他的node ajax法寶也會輔佐你通關(guān)的,在學(xué)習(xí)的途中如果遇到了問題,可以試著回顧一下之前的情節(jié),以便于更好的推進主線劇情,準(zhǔn)備出發(fā)!

一,初入Vue大陸

1.Vue的初體驗

一套用于構(gòu)建用戶界面的漸 進式JavaScript框架

1.Vue的特點1

1.采用的是組件化模式,提高代碼復(fù)用率且讓代碼更好維護。

2.聲明式編碼,讓程序猿 / 媛無需直接操作DOM,提高開發(fā)效率。

3.使用虛擬DOM和優(yōu)秀的Diff算法,盡量復(fù)用DOM節(jié)點。

2.引入vue

找到官網(wǎng):Vue官網(wǎng)

點擊教程

然后選擇安裝,(這里有倆版本,一個是開發(fā)的,一個是生產(chǎn)的,一般我們使用vue.js進行學(xué)習(xí))

這倆的區(qū)別就是有無提示的問題

【學(xué)Vue就跟玩一樣】學(xué)習(xí)vue就像打游戲一樣簡單

?下載完成之后將vue.js文件放到我們的包里面并且引入

【學(xué)Vue就跟玩一樣】學(xué)習(xí)vue就像打游戲一樣簡單

下載Vue擴展Vue擴展?提取碼:1127

下載成功并且開啟后就會顯示這個vue的圖標(biāo),這個可以更好的輔助我們進行vue的相關(guān)操作?

【學(xué)Vue就跟玩一樣】學(xué)習(xí)vue就像打游戲一樣簡單【學(xué)Vue就跟玩一樣】學(xué)習(xí)vue就像打游戲一樣簡單

3.可能出現(xiàn)的問題

問題1:控制臺出現(xiàn)提示

?

如何關(guān)閉呢?(打開vue.js文件然后CTRL+f查找 productionTip ,最后再將該語句的true改為false)也可以直接 寫上這串代碼 Vue. config. productionTip = false;

【學(xué)Vue就跟玩一樣】學(xué)習(xí)vue就像打游戲一樣簡單

?問題2:出現(xiàn)404的錯誤

直接去比特沖將一張圖片轉(zhuǎn)換為ico圖標(biāo)的樣式并且將名稱改為favicon.ico即可

?問題3:啥錯誤提示也沒看到

打開vscode點擊插件,查找一個“ Live Serve”的插件即可

【學(xué)Vue就跟玩一樣】學(xué)習(xí)vue就像打游戲一樣簡單

4.創(chuàng)建Vue實例

這里遵循一對一原則,一個vue實例只能操作一個容器

<body>
    <!-- 創(chuàng)建一個容器 -->
    <div id="root">
        <h1>hello,{{name}}</h1> <!-- 使用插值語法用雙重花括號包裹{{}} 也就是【vue模板】-->
    </div>
    <h1>{{name}}</h1><!-- 這里的Vue實例只是接管了id名為root的容器,所以只能再該容器中使用 -->
    <script>
        // 創(chuàng)建Vue實例,直傳一個參數(shù)
        new Vue({
            el: '#root',// el用于指定當(dāng)前Vue實例為那個容器服務(wù),值一般為css選擇器字符串
            data: {
                name: 'Vue小嘎魚'
            }
        })
    </script>
</body>

注:使用Vue的第一步就是創(chuàng)建實例?,容器里的代碼在符合html規(guī)范的語法基礎(chǔ)上新增了Vue的一些特殊語法,容器里的代碼被稱為[Vue模板],Vue實例和容器是一 一對應(yīng)的,在實際開發(fā)中有且只有一個Vue實例并且會配合著組件起使用,{{js表達(dá)式}}且js表達(dá)式可以自動讀取到data中的所有屬性,如果data中的數(shù)據(jù)發(fā)生改變,那么頁面中所有用到該數(shù)據(jù)的地方也會自動更新

5.模板語法

1.插值語法:

功能:用于解析標(biāo)簽體內(nèi)容。

寫法: {{js表達(dá)式}},且可以直接讀取到data中的所有屬性。

2.指令語法:

功能:用于解析標(biāo)簽(包括:標(biāo)簽屬性、標(biāo)簽體內(nèi)容、綁定事件等)

例: v- bind:href="xx"或簡寫為 :href="xxx", xxx同樣要寫js表達(dá)式且可以直按讀取到data中的所有屬性。

注: Vue中有很多的指令,且形式都是: v-xxx(還有v-model,v-if等)

【學(xué)Vue就跟玩一樣】學(xué)習(xí)vue就像打游戲一樣簡單

6.數(shù)據(jù)綁定

Vue中有2種數(shù)據(jù)綁定的方式

1.單向綁定(v-bind):數(shù)據(jù)只能從data傳入頁面。

2.雙向綁定(v-model):數(shù)據(jù)不僅能從data傳入頁面,還可以從頁面?zhèn)魅雂ata

3.雙向綁定一 般都應(yīng)用在表單類元素上(如: input、 select等)

4.v-model:value可以簡寫為v- model,因為v- model默認(rèn)收集的就是value值。

<body>
    <div class="inp">
        <!-- 單向數(shù)據(jù)綁定只能從data流向頁面,而雙向數(shù)據(jù)綁定可以互相流動 -->
        單向數(shù)據(jù)綁定:<input type="text" :value="name"><br>
        <!-- 注:v-model只能應(yīng)用到表單類元素上 -->
        雙向數(shù)據(jù)綁定:<input type="text" v-model:value="name">
    </div>
    <script>
        new Vue({
            el: ".inp",
            data: {
                name: '山魚'
            }
        })
    </script>
</body>

7.連接容器的方法

<body>
    <div class="one">
        <h1>你好,{{name}}</h1>
    </div>
    <script>
    const a= new Vue({
        // el:'.one', 第一種寫法
        data:{
            name:'shanyu'
        }
    })
    
    a.$mount('.one')// 第二種寫法
    </script>
</body>

直接使用el更簡單

【學(xué)Vue就跟玩一樣】學(xué)習(xí)vue就像打游戲一樣簡單?使用 實例使用對象原型里面的$mount也可以實現(xiàn)綁定 ,名.$mount('容器名')的方法更靈活

8.data的寫法

分別為對象式和函數(shù)式

<script>
        new Vue({
            el: '.one',
            // 第一種對象式
            data: {
                name: '山魚'
            },
            // 第二種函數(shù)式
            // 這里不可以使用箭頭函數(shù),箭頭函數(shù)自身木有this
            data() {
                return {
                    name: '山魚'
                }
            }
        })
    </script>

二,MVVM模型

為什么要了解MVVM模型?其實Vue的尤大大也是收到了MVVM的啟發(fā),但并不完全使用MVVM,我們也可以在官網(wǎng)上看到這段話

【學(xué)Vue就跟玩一樣】學(xué)習(xí)vue就像打游戲一樣簡單vm

那MVVM到底代表著什么呢?

其中:M(model模型):其實就是data中的數(shù)據(jù),V(View試圖):模板,也就是DOM的頁面,VM(試圖模型ViewModel):Vue實例

【學(xué)Vue就跟玩一樣】學(xué)習(xí)vue就像打游戲一樣簡單

其中的vm就是這個b藍(lán)色框內(nèi)的也就是ViewModel,他身上的所有屬性方法vm都可以使用,包括原型對象內(nèi)的屬性方法也可以使用

三,數(shù)據(jù)代理

這里的數(shù)據(jù)代理為何物呢?通過一個對 象代理對另一個對 象中屬性的操作(讀/寫)

1.Vue中的數(shù)據(jù)代理:通過vm對象來代理data對象中屬性的操作

2.Vue中數(shù)據(jù)代理的好處:更加方便的操作data中的數(shù)據(jù)

3.基本原理:通過0bject . defineProperty( )把data對象中所有屬性添加到vm上。為每一個 添加到vm上的屬性,都指定個getter/setter,在getter/setter內(nèi)部去操作(讀/寫) data中對應(yīng)的屬性。簡單來說就是把data的屬性全部都復(fù)制給了_data了一份,可以讓vm進行使用

Object.defineProperty方法(給對象添加屬性方法的一個方法)這個方法會傳入三個參數(shù)分別是對象名,屬性名,配置項。

 ? ?<script>
 ? ?let person = {
 ? ? ? ?name:'山魚',
 ? ? ? ?sex:'男',
 ?  } ? ?
 ? ?Object.defineProperty(person,'address',{
 ? ? ? ?value:18
 ?  })
 ? ?console.log(person);
 ? ?</script>

在這里我們可以看到,這個顏色稍微的有點變化(這里就是使用Object.defineProperty方法進行添加的,這里的address是不可以進行枚舉的,即不參與遍歷)

【學(xué)Vue就跟玩一樣】學(xué)習(xí)vue就像打游戲一樣簡單

這里可以使用Object.keys()進行驗證一下,結(jié)果的確沒有拿到這個address(使用for....in也可以)

【學(xué)Vue就跟玩一樣】學(xué)習(xí)vue就像打游戲一樣簡單

 <script>
    let person = {
        name:'山魚',
        sex:'男',
    }    
    Object.defineProperty(person,'address',{
        value:18
    })
    for(k in person){
        console.log(k);
    }
    console.log(Object.keys(person));
    console.log(person);
    </script>

如何讓address參與遍歷?【這里就使用了之前學(xué)過的 enumerable 只要將它的值改為true即可 】

enumerable : true (是否可以被枚舉)

writable:true(是否可以修改屬性)

configurable: true(是否可以刪除改屬性)

這四個基本配置項 的內(nèi)容(包括value)他們的默認(rèn)值為false

1.對數(shù)據(jù)進行讀取和修改

這里用到了兩個方法,get和set

    <script>
        let number = 19;
        let person = {
            name: '山魚',
            sex: '男',
        }
        Object.defineProperty(person, 'address', {
            //當(dāng)有人讀取person的address屬性時,get函 數(shù)(getter)就會被調(diào)用,且返回值就是age值
            get() {
                console.log('address屬性已被讀取');
                return number;
            },
            //當(dāng)有人修改person的address屬性時,set函數(shù)(setter)就會被調(diào)用,且 會收到修改的具值
            set(value) {
                console.log('address屬性已被修改');
                number = value
            }
        })
    </script>

?2.事件修飾符

1.prevent:阻止默認(rèn)事件(常用)

2.stop: 阻止事件冒泡(常用)

3.once:事件只觸發(fā)一次(常用)

4.capture: 使用事件的捕獲模式

5.self: 只有event.target是當(dāng)前操作的元素是才觸發(fā)事件

6.passive: 事件的默認(rèn)行為立即執(zhí)行,無需等待事件回調(diào)執(zhí)行完畢

<div id="user">
        <h1>歡迎來到{{name}}的博客之家</h1>
        <!-- 1,阻止默認(rèn)事件 -->
        <a  @click.prevent = "showInfo">點我不跳轉(zhuǎn)</a>
        <!-- 2,阻止事件冒泡 -->
        <div class="one" @click = 'showInfo'>
            <button @click.stop = 'showInfo'>點我</button>
        </div>
        <!-- 3,事件只觸發(fā)一次 -->
        <button @click.once = 'showInfo'>只能點一次哦</button>
    </div>
    <script>
    const vm = new Vue({
        el:'#user',
        data:{
            name:'山魚',
        },
        methods:{
            showInfo(e){
                alert('泥嚎!同學(xué)')
            }
        }
    })
    </script>

3.鍵盤事件

常用的按鍵別名:

回車=> enter ,刪除=>delete(捕獲“刪除”和“退格”鍵) ,退出=> esc ,空格=> space ,上=>up ,下=> down ,左=> left ,右=> right

特殊的按鍵別名:

1.換行=> tab (特殊,必須配合keydown使用)

2.系統(tǒng)修飾鍵 ctrl,alt,shift,meta(meta就是win鍵也就是windows徽標(biāo))

注:配合keyup使用:按下修飾鍵的同時,再按下其他鍵,隨后釋放其他鍵,事件才被觸發(fā)。配合keydown使用:正常觸發(fā)事件。

<div class="user">
        <h1>歡迎加入{{uname}}</h1>
        <!--.enter 就是按下回車觸發(fā)事件,也成為按鍵別名-->
        <input type="text" placeholder="按下回車提示輸入" @keyup.enter = 'showInfo'>
        <!--刪除 del -->
        <input type="text" placeholder="按下del提示輸入" @keyup.delete = 'showInfo'>
        <!-- 退出esc -->
        <input type="text" placeholder="按下ESC提示輸入" @keyup.esc = 'showInfo'>
        <!-- 特殊按鍵別名 -->
        <input type="text" placeholder="一同按下ctrl+‘其他按鍵’并釋放提示輸入" @keyup.ctrl = 'showInfo'>
        <!-- 自定義別名 -->
        <input type="text" placeholder="按下回車提示輸入" @keyup.huiche = 'showInfo'>
    </div>
    <script>
        // 也可以自定義按鍵別名
        Vue.config.keyCodes.huiche = 13;
        const vm = new Vue({
        el:'.user',
        data:{
            uname:'山魚社區(qū)'
        },
        methods:{
            showInfo(e){
                console.log(e.target.value);
            }
        }
    })
    </script>

寫在最后

點贊??:您的贊賞是我前進的動力!收藏?:您的支持我是創(chuàng)作的源泉!

評論?:您的建議是我改進的良藥!山魚??社區(qū):歡迎大家加?山魚社區(qū)? !

我依舊是小山??并且依然在逐漸成長,勵志成為大撒魚,感謝大家的一路支持

?

?

?

到了這里,關(guān)于【學(xué)Vue就跟玩一樣】學(xué)習(xí)vue就像打游戲一樣簡單的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • vue watch監(jiān)聽對象 新舊值一樣

    廢話不多說,直接上代碼 通過打印最后發(fā)現(xiàn)一個問題,watch中的新舊值一樣 解決方案 通過computed剝離與原數(shù)據(jù)的引用關(guān)系

    2024年02月12日
    瀏覽(18)
  • vue 數(shù)組轉(zhuǎn)換成dataframe,在終端像python一樣行列顯示

    1 npm安裝 2 導(dǎo)入 3 src目錄下創(chuàng)建文件 pandas-js.d.ts 4 使用

    2024年02月13日
    瀏覽(17)
  • 微信小程序的雙向數(shù)據(jù)綁定和vue的哪里不一樣?下拉刷新的方式代碼示例

    小程序的雙向數(shù)據(jù)綁定和Vue的雙向數(shù)據(jù)綁定有一些不同之處。 實現(xiàn)方式:小程序的雙向數(shù)據(jù)綁定采用的是數(shù)據(jù)劫持的方式,通過重寫對象的get和set方法來監(jiān)聽數(shù)據(jù)的變化和更新視圖。而Vue使用的是響應(yīng)式數(shù)據(jù)的方式,通過使用Object.defineProperty()方法來劫持對象的屬性。 語法差

    2024年02月22日
    瀏覽(21)
  • Vue - 實現(xiàn)類似小程序 onShow() 一樣的生命周期鉤子方法(監(jiān)聽頁面的顯示,只要頁面顯示就執(zhí)行代碼)

    Vue - 實現(xiàn)類似小程序 onShow() 一樣的生命周期鉤子方法(監(jiān)聽頁面的顯示,只要頁面顯示就執(zhí)行代碼)

    我們都知道,在微信小程序和 uni-app 項目中,頁面有一個 onShow() 生命周期,當(dāng)頁面顯示時就會觸發(fā)。 但在 Vue.js / Nuxt.js 項目中是沒有這個鉤子函數(shù)的, 本文將提供 最簡單、高效 的解決方案, 另外兼容性親測完美。 如下效果圖所示,首頁每次顯示的時候都會觸發(fā)(您看控制

    2024年02月11日
    瀏覽(29)
  • vue做游戲vue游戲引擎vue小游戲開發(fā)

    vue做游戲vue游戲引擎vue小游戲開發(fā)

    Vue.js 是一個構(gòu)建用戶界面的漸進式JavaScript框架,它同樣可以用于游戲開發(fā)。使用 Vue 開發(fā)游戲通常涉及以下幾個關(guān)鍵步驟和概念: 1. 了解 Vue 的核心概念?1 在開始使用 Vue 進行游戲開發(fā)之前,你需要理解 Vue 的一些核心概念,如組件化、響應(yīng)式數(shù)據(jù)綁定、指令、生命周期鉤子

    2024年04月09日
    瀏覽(27)
  • 像游戲一樣辦公,賦能OA系統(tǒng)轉(zhuǎn)型

    辦公幣 OAC ,是一種以區(qū)塊鏈為基礎(chǔ)的,基于P2P形式的加密貨幣。在新型OA系統(tǒng)中員工通過完成不同的待辦任務(wù),OACoin下發(fā)中心會給予相應(yīng)的代幣獎勵,獲得的貨幣還可以在區(qū)塊鏈中進行交易。打破傳統(tǒng)枯燥OA辦公模式,激發(fā)員工辦公積極性,像游戲一樣辦公,賦能OA系統(tǒng)轉(zhuǎn)型

    2024年02月12日
    瀏覽(27)
  • Vue中如何進行游戲開發(fā)與游戲引擎集成?

    Vue中如何進行游戲開發(fā)與游戲引擎集成?

    Vue.js是一款流行的JavaScript框架,它的MVVM模式和組件化開發(fā)思想非常適合構(gòu)建Web應(yīng)用程序。但是,如果我們想要開發(fā)Web游戲,Vue.js并不是最合適的選擇。在本文中,我們將介紹如何在Vue.js中進行游戲開發(fā),并集成一些流行的游戲引擎。 在閱讀本文之前,你需要掌握以下技能:

    2024年02月11日
    瀏覽(26)
  • Vue2模擬貪吃蛇小游戲

    Vue2模擬貪吃蛇小游戲

    目錄 一、效果展示 二、代碼展示 三、原理講解 3.1、頁面創(chuàng)建 3.2、創(chuàng)建蛇與食物 3.3、移動與邊界判斷 3.4、吃、得分總結(jié) view的本地文件:可直接運行。 ?上面代碼引入的工具值:utils里的js文件 這里是刷新頁面會獲取的不同漸變色 20x20方格陣:由雙層for循環(huán)得到一個20x20的數(shù)

    2024年02月07日
    瀏覽(11)
  • ssm+vue游戲攻略網(wǎng)站源碼和論文

    ssm+vue游戲攻略網(wǎng)站源碼和論文

    ssm+vue游戲攻略網(wǎng)站源碼和論文052 ?開發(fā)工具:idea? ?數(shù)據(jù)庫mysql5.7+ ?數(shù)據(jù)庫鏈接工具:navcat,小海豚等 ? 技術(shù):ssm 一、主要內(nèi)容和基本要求 游戲攻略網(wǎng)站分為管理員與用戶兩種角色。 管理員的功能包括登錄,用戶管理,游戲分類管理,游戲攻略管理,游戲資訊管理等。 登錄

    2024年02月11日
    瀏覽(13)
  • Vue2模擬俄羅斯方塊小游戲

    Vue2模擬俄羅斯方塊小游戲

    目錄 一、效果展示 二、代碼分享 三、原理分析 3.1、界面搭建 3.2、方塊創(chuàng)建 3.3、方塊旋轉(zhuǎn) 3.4、方塊移動 3.5、移動判斷 3.6、下落判斷與清除 3.7、得分計算 ?工具函數(shù): ? 主界面的20X10,類似貪吃蛇,副界面的隨機方塊,則是4x4,都是雙重for循環(huán)。初始化的時候調(diào)用gameFram

    2024年02月08日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包