vuejs组件内的props的属性赋值问题?
问题描述
组件:<test :loading.sync="loading"></test>
Vue.component('test',{ template: '#testText', props: { loading: { type: Boolean, default: false} }, methods: {getData: function (data) { this.loading = false;//此句有错误,该如何更正} }});new Vue({el: '#indexBox',data: { loading : false},methods : {loadMore: function () { this.loading = true;} } });
我想在子组件里面变更loading的值回传给父组件,请问该如何控制loading
问题解答
回答1:你用的是vue2吧,如果是vue2的话就应该用事件来把子组件的状态传给父组件,有两种办法,一种是在父组件中传一个v-model='outerLoading',然后子组件里面
watch:{ outerLoading (v) {this.innerLoading = v }, innerLoading (v) {this.emit('input', v) }}
这样outLoading就会响应innerLoading,实现双向绑定的功能。还有一种做法和这个类似,就是把this.emit('input', v)换成this.emit('eventName', v),然后在父组件中@eventName='eventFunc', 再通过父组件中的eventFunc(v) { //code... }来响应子组件的状态
相关文章:
1. javascript - 关于vue的v-for遍历的时候,index索引值能否控制在一个最大值来回输出?2. javascript - 为什么element.style打印出的对象中的transform有值,而打印出来的transform没值?3. 为什么php修改数据无法同步到数据库,只是当前页面修改成功?4. python - django在nginx里模板输出html标签问题5. javascript - 最近处理业务逻辑,对同一个元素先unbind,之后再bind,发现使用问题。6. node.js - mysql如何通过knex查询今天和七天内的汇总数据7. javascript - vue-router怎么不能实现跳转呢8. javascript - 后端传过来的数据格式是这样,如何使用?9. css - linear-gradient无效是怎么回事?10. javascript - JS 中,’a’ 在内存中占2个字节还是1个字节?

网公网安备