Vue CLI 是一個(gè)命令行工具,可以快速創(chuàng)建 Vue.js 項(xiàng)目。它提供了一些默認(rèn)配置,使得開(kāi)發(fā)者更容易集中精力在開(kāi)發(fā)上。Vue CLI搭建的工程項(xiàng)目不僅僅可以使用Vue.js,還支持其他主流技術(shù)棧(如React),是一個(gè)強(qiáng)大的前端腳手架。
在 Vue CLI 中,頁(yè)面和組件是通過(guò) props 和 events 來(lái)傳遞參數(shù)的。在父組件中通過(guò)v-bind指令來(lái)綁定屬性值,子組件通過(guò)props 屬性來(lái)接受。例如,我們需要在父組件中傳遞msg屬性到子組件的時(shí)候,需要在父組件中加入以下代碼:
<template> <div> <hello-world msg="Welcome to Your Vue.js App"/> </div> </template>
同時(shí),需要在子組件中定義 props,通過(guò)props來(lái)接收屬性的值:
<template> <div> {{ msg }} </div> </template> <script> export default { name: 'HelloWorld', props: { msg: String } } </script>
通過(guò)Vue CLI搭建的項(xiàng)目,多頁(yè)面應(yīng)用也可以很方便地傳遞參數(shù)。我們只需在父組件中使用 命名視圖(named route views)來(lái)指定子組件的位置,并使用 props 對(duì)該組件進(jìn)行參數(shù)傳遞。例如:
<template> <div> <!-- 命名視圖定義 --> <router-view name="hello" v-bind:msg="message"></router-view> </div> </template> <script> export default { name: 'App', data () { return { message: 'Hello Vue!' } } } </script>
然后,在子組件中,我們可以通過(guò)props來(lái)接收參數(shù):
<template> <div> {{ msg }} </div> </template> <script> export default { name: 'HelloWorld', props: ['msg'] } </script>
總結(jié)來(lái)說(shuō),在Vue CLI 中傳遞參數(shù),父組件利用組件的 props 屬性來(lái)傳遞數(shù)據(jù),子組件通過(guò)同樣的 props 屬性來(lái)接收數(shù)據(jù)。通過(guò)這種方式,我們可以輕松地實(shí)現(xiàn)組件間的數(shù)據(jù)傳遞,并達(dá)到組件化開(kāi)發(fā)的效果。