巨坑--VUE的component和components

593 阅读2分钟

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第1天,点击查看活动详情

一:故事会

该怎么说呢?原则上来讲,已经不是新手了,不该犯这样的错误。但是还是粗心大意的写错了。 当时我心里想的就是:哦,掘金写作的活动可以蹭了。嘻嘻

在刚过完清明节的周四,大家还沉迷于肯德基疯狂星期四的时候,重庆这座山城里,一个颤巍巍的打工人,第4次颤巍巍的开始排查自己的代码。窗户外,金色阳光洒落在香樟树上。但是打工人心里却感觉不到丝毫温暖。打工人在一次一次的排查代码中麻木了,打工人不明白哪里出了错。不明白这个组件为什么不能使用。难道辛辛苦苦拆分出来的组件,又要写回初始版本---一大坨吗?打工人不甘心,我命由我不由天!!!!打工人在心里呼喊!

看看 多么辛勤,多么努力的打工人,他只不过想把代码写的优雅点,他有错吗?时间滴滴答答溜走。临近午饭时间了,打工人长呼了一口气

“其实一大坨也挺好,我写注释了,别人应该看的懂”,想到这的打工人一跃而起,向楼下奔去,脑海里纠结:吃素面还是素粉呢?正在这时,打工人眼角瞄到了一个s。一个s,components?难道我写错了??他心里浮现出了一丝怀疑。打开自己的代码后,打工人看到了一个component干净白生的躺在代码丛中,正对着自己微笑。打工人此刻不知道是想哭还是想笑,叹了一口气,如释重负的打开了掘金,写下了这篇文章。

二:VUE的component和components区别

1.. component是注册全局组件,在实例化VUE前调用,注册后可以全局使用

<div id="guoguo"> 
<counter> </counter>
</div>
<script> 
//定义一个新的vue 组件。组件就是自定义的元素
Vue.component("counter",{ 
	data:function(){
			return {count:0}
			},
        template:'<button v-on:click="count++">点击计算点击次数:{{count}}次</button>'
})
 
//定义一个新的vue  实例,用el 绑定组件元素(counter)的父元素  faCounter 元素上
new Vue({
	el:"#guoguo"
	})
 
</script>

2.. components是局部注册组件,注册后只能在当页调用。

<div id="guoguo"> 
<TestPage> </TestPage>
</div>
<script> 
export {TestPage} from './TestPage'
export default {
  components: {TestPage}//此处进行局部注册
 } 
</script>

全局用的不多,只要记得局部注册的时候别写错了,就没大问题。一定记得,component和components不一样啊喂.