Vue 给子组件传递参数

Vue 给子组件传递参数

  1. 首先看个例子吧

原文

html

<div class="container" id="app">
    <div class="row">
        <div class="col-sm-12">
            <h3>My Components</h3>
            <todo-item :todos="todos01"></todo-item>
        </div>
    </div>
</div>
<script type="x-template" id="component-todo">
    <ul class="list-group" v-if="todos && todos.length > 0">
        <li class="list-group-item" v-for="todo in todos" :class="{special: !todo.isSpecial}">
            {{todo.title}}
            <button class="btn btn-xs  pull-right" :class="{‘btn-success‘: todo.isSpecial,‘btn-danger‘: !todo.isSpecial }" @click="changeActive(todo)">
                {{todo.isSpecial ? ‘DONE‘ : ‘What?‘}}
            </button>
        </li>
    </ul>
    <div v-else>
        <p>There isn‘t any todo</p>
    </div>
</script>

js

var todoItem = Vue.extend({
    template: ‘#component-todo‘,
    props: [‘todos‘],
    methods: {
        changeActive(todo) {
            todo.isSpecial = !todo.isSpecial;
        }
    }
})
Vue.component(‘todo-item‘, todoItem);
new Vue({
    el: ‘#app‘,
    data: {
        todos: [{
            id: 1,
            title: ‘zgo to shoping‘,
            isSpecial: false
        }, {
            id: 2,
            title: ‘jump for sport‘,
            isSpecial: true
        }, {
            id: 3,
            title: ‘welcome vueJs‘,
            isSpecial: true
        }],
        todos01: [{
            id: 1,
            title: ‘so so crazy‘,
            isSpecial: true
        }, {
            id: 2,
            title: ‘i v ini‘,
            isSpecial: false
        }, {
            id: 3,
            title: ‘nothing is there‘,
            isSpecial: true
        }]
    }
})

<todo-item :todos="todos01"></todo-item>

todos是组件中通过props传递过来的参数,todos01是组件上一层定义的

可以尝试将todos01换成todos看看效果

时间: 2024-10-02 20:11:47

Vue 给子组件传递参数的相关文章

react 父组件向子组件传递参数

父组件的写法 子组件怎么接收了,如下 原文地址:https://www.cnblogs.com/tlfe/p/12574534.html

vue-父组件传递参数到子组件

案例: 父组件 <template> <div id="app"> <h1>vuex</h1> <h3>count:{{count}}</h3> <button @click="count++">+1</button> <button @click="count--">-1</button> <!--父组件向子组件传递参数

Vue父组件向子组件传递方法(自定义方法)并且子组件向父组件传递数据

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" con

子组件通过this.$emit方式向父组件传递参数的问题

子组件通过this.$emit向父组件传递参数,并且又需要在父组件中使用自定义参数的时候,对应下面两种情况,来接受参数 子组件传出单个参数时: // 子组件 this.$emit('test',this.param) // 父组件 @test='test($event,userDefined)' 子组件传出多个参数时: // 子组件 this.$emit('test',this.param1,this.param2, this.param3) // 父组件 arguments 是以数组的形式传入

vue组件-#构成组件-父组件向子组件传递数据

组件对于vue来说非常重要,学习学习了基础vue后,再回过头来把组件弄透! 一.概念 组件意味着协同工作,通常父子组件会是这样的关系:组件 A 在它的模版中使用了组件 B . 它们之间必然需要相互通信:父组件要给子组件传递数据,子组件需要将它内部发生的事情告知给父组件. 在 Vue.js 中,父子组件的关系可以总结为 props down, events up . 父组件通过 props 向下传递数据给子组件,子组件通过 events 给父组件发送消息. 看看它们是怎么工作的.        

vue父子组件传递参数

父向子组件传递 在父组件里子组件的模板里写上要传递的key和value <child  key='value'></child> 或者 <child  :key='value'></child> 如果是通过冒号绑定, value需要先在data里定义 子组件内添加props:['key'] 进行接收    props与data同级 子向父传递 子组件的方法内通过 this.$emit('name',value):进行传值 父组件通过@name=fn进行接收 

Vue父组件向子组件传递一个动态的值,子组件如何保持实时更新实时更新?

原文:https://blog.csdn.net/zhouweixue_vivi/article/details/78550738 2017年11月16日 14:22:50 zhouweixue_vivi 阅读数:29918 最近用vue做一个新项目,经历了各种折磨,每次遇到问题都想大喊,格劳资上JQuery,氮素肯定是不行的,今天遇到一个小问题,Vue父组件向子组件传递一个动态的值,子组件只能获取初始值,不能实时更新? 这就有点折磨人了,设想的是,父组件发生变化获取数据,动态传递给子组件,子组

Vue父组件与子组件传递事件/调用事件

父组件: <template><div><div @click="openChild">弹弹弹,弹出子组件</div><childs ref="alert" @watchChild="parentReceive"></childs> <!--监听子组件绑定的方法--></div></template> <script>impor

vue-router与父子组件传递参数

1.路由设置 2.父组件给子组件传递路径 3.子组件接收父组件传递过来的路径 4.子组件设置一个事件 5.设置事件,跳转到路由指定页面 原文地址:https://www.cnblogs.com/recluse/p/12149071.html