註冊元件失敗是什麼意思
vue 是一個完全支援元件化開發的框架, 元件之間可以進行相互的引用。vue 中元件的引用原則:先註冊後使用。
1。 元件的註冊
元件之間可以進行相互的引用,例如:
註冊元件的的方式:分為“全域性註冊”和“區域性註冊”兩種,其中:
被全域性註冊的元件,可以在全域性任何一個元件內使用
被區域性註冊的元件,只能在當前註冊的範圍內使用
1)全域性註冊元件
2)使用全域性註冊元件
使用app。component() 方法註冊的全域性元件,直接以標籤的形式進行使用即可,例如:
//在 main。js中,註冊了my-swiper 和my-test兩個全域性元件 spa_app。component(‘my-swiper’, Swiper) spa_app。component(‘my-test’, Test) <!——在其他元件中,直接以標籤的形式,使用剛才註冊的全域性元件即可 這是App根元件
3)區域性註冊元件
這是App根元件
2。全域性註冊和區域性註冊的區別
被全域性註冊的元件,可以在全域性任何一個元件內使用
被區域性註冊的元件,只能在當前註冊的範圍內使用
應用場景: 如果某些元件在開發期間的使用頻率很高,推薦進行全域性註冊;
如果某些元件只在特定的情況下會被用到,推薦進行區域性註冊。
3。元件註冊時名稱的大小寫
在進行元件的註冊時,定義元件註冊名稱的方式有兩種:
①使用kebab-case命名法(俗稱短橫線命名法,例如my-swiper 和my-search)
②使用PascalCase命名法(俗稱帕斯卡命名法或大駝峰命名法,例如MySwiper和MySearch)
短橫線命名法的特點:
必須嚴格按照短橫線名稱進行使用
帕斯卡命名法的特點:
既可以嚴格按照帕斯卡名稱進行使用,又可以轉化為短橫線名稱進行使用
注意:在實際開發中,推薦使用帕斯卡命名法為元件註冊名稱,因為它的適用性更強。
4。透過name 屬性註冊元件
在註冊元件期間,除了可以直接提供元件的註冊名稱之外,還可以把元件的name 屬性作為註冊後元件的名稱,
示例程式碼如下:
5。元件之間的樣式衝突問題
預設情況下,寫在。vue 元件中的樣式會全域性生效,因此很容易造成多個元件之間的樣式衝突問題。導致元件之間樣式衝突的根本原因是:
單頁面應用程式中,所有元件的DOM 結構,都是基於唯一的index。html 頁面進行呈現的
每個元件中的樣式,都會影響整個index。html 頁面中的DOM 元素