摘要:主要當作屬性來使用方法表示一個具體的操作,主要書寫業(yè)務(wù)邏輯一個對象,鍵是需要觀察的表達式,值是對應(yīng)回調(diào)函數(shù)。
什么是組件: 組件的出現(xiàn),就是為了拆分Vue實例的代碼量的,能夠讓我們以不同的組件,來劃分不同的功能模塊,將來我們需要什么樣的功能,就可以去調(diào)用對應(yīng)的組件即可;
組件化和模塊化的不同:
組件化: 是從UI界面的角度進行劃分的;前端的組件化,方便UI組件的重用;
var login = Vue.extend({
template: '登錄
'
});
Vue.component('login', login);
Vue.component('register', {
template: '注冊
'
});
同時,需要使用 Vue.component 來定義組件:
Vue.component('account', {
template: '#tmpl'
});
注意: 組件中的DOM結(jié)構(gòu),有且只能有唯一的根元素(Root Element)來進行包裹!
data
需要被定義為一個方法,例如:Vue.component('account', {
template: '#tmpl',
data() {
return {
msg: '大家好!'
}
},
methods:{
login(){
alert('點擊了登錄按鈕');
}
}
});
data
屬性中的值,需要使用this
來訪問;components
屬性定義局部子組件
flag
標識符結(jié)合v-if
和v-else
切換組件
:is
屬性來切換不同的子組件,并添加切換動畫 // 登錄組件
const login = Vue.extend({
template: `
登錄組件
`
});
Vue.component('login', login);
// 注冊組件
const register = Vue.extend({
template: `
注冊組件
`
});
Vue.component('register', register);
// 創(chuàng)建 Vue 實例,得到 ViewModel
var vm = new Vue({
el: '#app',
data: { comName: 'login' },
methods: {}
});
component
標簽,來引用組件,并通過:is
屬性來指定要加載的組件:
props
屬性來定義父組件傳遞過來的數(shù)據(jù)
v-bind
或簡化指令,將數(shù)據(jù)傳遞到子組件中:
getMsg
是父組件中methods
中定義的方法名稱,func
是子組件調(diào)用傳遞過來方法時候的方法名稱
this.$emit(方法名, 要傳遞的數(shù)據(jù))
方式,來調(diào)用父組件中的方法,同時把數(shù)據(jù)傳遞給父組件使用
目標:主要練習父子組件之間傳值
this.$refs
來獲取元素和組件
這是一個大大的H1
對于普通的網(wǎng)站,所有的超鏈接都是URL地址,所有的URL地址都對應(yīng)服務(wù)器上對應(yīng)的資源;
對于單頁面應(yīng)用程序來說,主要通過URL中的hash(#號)來實現(xiàn)不同頁面之間的切換,同時,hash有一個特點:HTTP請求中不會包含hash相關(guān)的內(nèi)容;所以,單頁面程序中的頁面跳轉(zhuǎn)主要用hash實現(xiàn);
在單頁面應(yīng)用程序中,這種通過hash改變來切換頁面的方式,稱作前端路由(區(qū)別于后端路由);
登錄
注冊
Vue.extend
創(chuàng)建組件 // 4.1 使用 Vue.extend 來創(chuàng)建登錄組件
var login = Vue.extend({
template: '登錄組件
'
});
// 4.2 使用 Vue.extend 來創(chuàng)建注冊組件
var register = Vue.extend({
template: '注冊組件
'
});
// 5. 創(chuàng)建一個路由 router 實例,通過 routers 屬性來定義路由匹配規(guī)則
var router = new VueRouter({
routes: [
{ path: '/login', component: login },
{ path: '/register', component: register }
]
});
// 6. 創(chuàng)建 Vue 實例,得到 ViewModel
var vm = new Vue({
el: '#app',
router: router // 使用 router 屬性來使用路由規(guī)則
});
{ path: '/register/:id', component: register }
this.$route.params
來獲取路由中的參數(shù):var register = Vue.extend({
template: '注冊組件 --- {{this.$route.params.id}}
'
});
children
屬性實現(xiàn)路由嵌套
Account
watch
屬性的使用考慮一個問題:想要實現(xiàn) 名
和 姓
兩個文本框的內(nèi)容改變,則全名的文本框中的值也跟著改變;(用以前的知識如何實現(xiàn)???)
data
中屬性的改變:
+
=
{{fullName}}
登錄
注冊
computed
計算屬性的使用getter
的計算屬性:
+
=
{{fullName}}
getter
和setter
的計算屬性:
{{fullName}}
watch
、computed
和methods
之間的對比computed
屬性的結(jié)果會被緩存,除非依賴的響應(yīng)式屬性變化才會重新計算。主要當作屬性來使用;methods
方法表示一個具體的操作,主要書寫業(yè)務(wù)邏輯;watch
一個對象,鍵是需要觀察的表達式,值是對應(yīng)回調(diào)函數(shù)。主要用來監(jiān)聽某些特定數(shù)據(jù)的變化,從而進行某些具體的業(yè)務(wù)邏輯操作;可以看作是computed
和methods
的結(jié)合體;nrm
的安裝使用作用:提供了一些最常用的NPM包鏡像地址,能夠讓我們快速的切換安裝包時候的服務(wù)器地址;
什么是鏡像:原來包剛一開始是只存在于國外的NPM服務(wù)器,但是由于網(wǎng)絡(luò)原因,經(jīng)常訪問不到,這時候,我們可以在國內(nèi),創(chuàng)建一個和官網(wǎng)完全一樣的NPM服務(wù)器,只不過,數(shù)據(jù)都是從人家那里拿過來的,除此之外,使用方式完全一樣;
npm i nrm -g
全局安裝nrm
包;nrm ls
查看當前所有可用的鏡像源地址以及當前所使用的鏡像源地址;nrm use npm
或nrm use taobao
切換不同的鏡像源地址;文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/1121.html
摘要:菜鳥教程這是一個屬性其值是字符串菜鳥教程同上這是一個屬性其值是字符串用于定義的函數(shù),可以通過來返回函數(shù)值。它們都有前綴,以便與用戶定義的屬性區(qū)分開來。 開篇語 我最近學習了js,取得進步,現(xiàn)在學習vue.js.建議新手學習,請不要用npm的方式(vue-cli,vue腳手架),太復(fù)雜了. 請直接下載vue.js文件本地引入,就上手學習吧參照菜鳥教程網(wǎng)站的vue.js教程http://...
摘要:有興趣的同學可以查看之前發(fā)布的文章學習系列一學習實踐筆記附學習系列二學習實踐筆記附學習系列三和網(wǎng)絡(luò)傳輸相關(guān)知識的學習實踐學習系列四打包工具的使用學習系列五從來聊聊學習系列項目地址項目暫時有點亂,之后會進行整理優(yōu)化。 上次學習了vue-router的使用,讓我能夠在各個頁面間切換,將頁面搭建了起來。這次則要學習vue的狀態(tài)管理模式——vuex。它類似于redux來應(yīng)用的全局狀態(tài)。 注:本...
摘要:各模塊各司其職,提高開發(fā)效率。使用生成的項目目錄里,我們主要關(guān)注目錄。這個是我們之前提到的單頁面組件。這是項目的路由文件,存放項目中所有的路由。這里和我們之前所學沒什么不同,不過是涉及了不少的知識。 一、vue模塊化開發(fā) 所謂的模塊化開發(fā)是指將不同的部分封裝到不同的模塊中,不再將所有的組件、路由等寫在一個頁面中。各模塊各司其職,提高開發(fā)效率。 使用vue-cli生成的項目目錄里,我們主...
摘要:各模塊各司其職,提高開發(fā)效率。使用生成的項目目錄里,我們主要關(guān)注目錄。這個是我們之前提到的單頁面組件。這是項目的路由文件,存放項目中所有的路由。這里和我們之前所學沒什么不同,不過是涉及了不少的知識。 一、vue模塊化開發(fā) 所謂的模塊化開發(fā)是指將不同的部分封裝到不同的模塊中,不再將所有的組件、路由等寫在一個頁面中。各模塊各司其職,提高開發(fā)效率。 使用vue-cli生成的項目目錄里,我們主...
閱讀 844·2023-04-25 19:43
閱讀 4109·2021-11-30 14:52
閱讀 3919·2021-11-30 14:52
閱讀 4024·2021-11-29 11:00
閱讀 3917·2021-11-29 11:00
閱讀 4035·2021-11-29 11:00
閱讀 3752·2021-11-29 11:00
閱讀 6597·2021-11-29 11:00