父组件向子组件传递数据(vue.js)
父组件: app.vue子组件: header.vue子组件:<!--logo 是在data中(父组件)定义的变量如果需要从父组件中获取logo的值,就需要使用props['logo'], 如30行在props中添加了元素以后,就不需要在data中(子组件)中再添加变量了-->{{logo}}(我是父组件传递过来的值){{na
·
父组件: app.vue
子组件: header.vue
子组件:
<template>
<div>
<!--
logo 是在data中(父组件)定义的变量
如果需要从父组件中获取logo的值,就需要使用props['logo'], 如30行
在props中添加了元素以后,就不需要在data中(子组件)中再添加变量了
-->
<div id='logo'>{{logo}}(我是父组件传递过来的值)</div>
<ul class="nav">
<li v-for="nav in navs">{{nav.li}}</li>
</ul>
</div>
</template>
<script>
export default{
name:'headerDiv',
data(){
return{
navs:[
{li:'主页'},
{li:'日志'},
{li:'说说'},
{li:'主页'},
{li:'相册'}
]
}
},
props:['logo']
}
</script>
<style scoped>
.nav li{list-style: none;}
</style>
<template>
<div id="app">
<img src="./assets/logo.png">
<!--
在调用组件的时候,使用v-bind将logo的值绑定为 APP.vue中定义的变量 logoMsg
然后就能将App.vue中的logoMsg的值传给header.vue 了
-->
<headerDiv :logo="logoMsg"></headerDiv>
<h1>{{msg}}</h1>
<firstcomponent></firstcomponent>
<router-view></router-view>
</div>
</template>
<script>
import firstcomponent from './components/firstcomponent.vue'
import headerDiv from './components/header.vue'
export default {
name: 'app',
data(){
return{
msg:'hellow Vue',
logoMsg:'WiseWrong'
}
},
components:{firstcomponent,headerDiv},
}
</script>
<style>
#app {
font-family: 'Avenir', Helvetica, Arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-align: center;
color: #2c3e50;
margin-top: 60px;
}
</style>
更多推荐
已为社区贡献2条内容
所有评论(0)