首頁>技術>

Vue簡說

Vue簡說是國人寫的一個前端框架,非常好用。Weex 是一個可以使用現代化的 Web 技術開發高效能原生應用的框架,以及適用於伺服器的NUXT框架。

學到的知識

Vue相關的基礎內容、基礎語法、MVVM模式、元件化、生命週期、動畫特效;以及一個實戰專案,在實戰專案中你會學到環境搭建、使用Git、資料模擬、本地開發、聯調、真機測試以及上線。

專案說明

本專案我們參考了去哪網的佈局,裡面包含的知識點包括:根據不同城市選擇不同景點、首頁實現了多區域輪播、多區域列表的迴圈展示、城市詳情頁面的城市展示、搜尋、左側字母與城市名稱聯動特效、景點詳情頁面、通用畫廊元件、件與件的頭部元件、遞迴展示的列表元件。同時藉助於有限的頁面,我們使用了各種有用的知識點,比如:Axios:(啊搜思)對ajax資料的獲取;Vue Router(Vue羅特):多頁面之間的路由;VueX:各個元件之間的資料共享;非同步元件:讓程式碼上線,效能更優;Stylus:(思呆勒思):負責前端的樣式;遞迴元件:實現了元件自身呼叫自己的功能;各種外掛以及公用元件的拆分。

學習前提

最好用JavaScript、ES6、webpack(打包工具)、npm(包管理工具)

如何學習Vue

跟著官方文件走,地址在這裡:Vue官方文件,安裝也是非常簡單的,點這裡,點選下載裡面的開發版本即可,其實就是複製該頁面到一個新的檔案vue.js裡面即可。

HelloWorld

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>Hello World</title>

<script src="./vue.js"></script>

</head>

<body>

<div id="app">{{ message }}</div>

<script>

// var a =document.getElementById("app");

// a.innerText="Hello World"

var a = new Vue({

el:" #app",

data: {

message: "Hello World1",

}

})

</script>

</body>

</html>

el是element的簡稱,代表這個Vue的一個例項接管的範圍,這裡就是<div id="app">{{ message }}</div>這個標籤內的資訊,data定義了一組資料,這個是以鍵值對的形式出現的,細心的你會發現這個vue在例項化的過程中傳入的也是鍵值對,而鍵值對都是用一對大括號{}包圍起來的。{{ message }}是插值表示式,有過其他語言基礎的童鞋肯定不會陌生。現在我們嘗試這樣,新增一條語句:<div>{{ message }}</div>也就是這樣:

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>Hello World</title>

<script src="./vue.js"></script>

</head>

<body>

<div id="app">{{ message }}</div>

<div>{{ message }}</div>

<script>

// var a =document.getElementById("app");

// a.innerText="Hello World"

var a = new Vue({

el:" #app",

data: {

message: "Hello World1",

}

})

</script>

</body>

</html>

輸出結果是這樣:

Hello World1

{{ message }}

原因就是你這個vue的例項只是接管了這個id為app的div標籤範圍內的內容。el限制了vue的作用範圍,data用於定義一些資料。

假定你現在需要間隔2秒輸出Bye World,你之前可能是這樣寫程式碼:

var a =document.getElementById("app");

a.innerText="Hello World";

setTimeout(function () {

a.innerText="Bye World"

},2000)

但是如果你使用了vue,你就不需要關注任何有關DOM的編碼了,你只要這樣寫:

var a = new Vue({

el:" #app",

data: {

message: "Hello World1",

}

})

setTimeout(function () {

a.$data.message = "Bye World"

},2000)

你不用關心DOM上的操作,只需要關注資料的管理即可,這裡的$data就是給上面例項中的data取了一個別名,然後根據鍵來取值就可以。vue對資料管理非常友好,因此只要資料發生了改變,頁面顯示就會跟著改變。

使用Vue建立的一個todolist

<body>

<div id="app">

<input v-model="inputValue">

<button type="button" @click="handleClick">點選</button>

<ul>

<li v-for="(item,index) of lists" :key="index">{{ item }}</li>

</ul>

</div>

<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>

<script type="text/javascript">

var app = new Vue({

el:"#app",

data:{

inputValue:"",

lists:[],

},

methods:{

handleClick:function () {

this.lists.push(this.inputValue);

this.inputValue='';

},

}

})

</script>

</body>

最新評論
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • edx-LFS158x Kubernetes學習筆記(第八章)