vue 方法获取返回值_vue中子组件怎么获取父组件中的方法的返回值

楼主解决了吗?好像通过@自定义方法名='父组件的方法名'这样绑定到子组件里面取不行,只能通过:自定义方法名='父组件方法名',然后在子组件中的props:['自定义方法名'],再在子组件中要使用的地方使用this.自定义方法名

父组件:

  • v-for="item in list" :key="item.id">

    {{item.content}}

    {{item.user}}

import commentChilder from './comment-childer'

export default {

components: {

'comment-childer' : commentChilder

},

data () {

return {

list: [

{id: this.uuid(), user: '李白', content: '天生我材必有用'},

{id: this.uuid(), user: '王健林', content: '先赚它一个亿'},

{id: this.uuid(), user: '雷军', content: '站在风口上,猪都能飞起来'}

]

}

},

created () {

this.loadComment()

},

methods: {

//uuid是return一个字符串

uuid() {

var s = [];

var hexDigits = "0123456789abcdef";

for (var i = 0; i < 36; i++) {

s[i] = hexDigits.substr(Math.floor(Math.random() * 0x10), 1);

}

s[14] = "4"; // bits 12-15 of the time_hi_and_version field to 0010

s[19] = hexDigits.substr((s[19] & 0x3) | 0x8, 1); // bits 6-7 of the clock_seq_hi_and_reserved to 01

s[8] = s[13] = s[18] = s[23] = "-";

var uuid = s.join("");

return uuid;

},

loadComment () {

if (localStorage.getItem('cmts')) {

var list = JSON.parse(localStorage.getItem('cmts'))

this.list = list;

}

}

}

}

子组件:

评论人:

评论内容:

export default {

components: {

},

data () {

return {

user : null,

content : null

}

},

//然后在再props这里引入父组件中传入的:自定义方法名

props: ['createUuid'],

methods: {

addContent () {

if(this.user !== null && this.content !== null){

//在子组件中this.自定义方法名,才能使用

//因为在父组件中createUuid()对应的方法是return的,这样的话我每次触发addContent方法就会重新生成一个新的uuid

var content = {id: this.createUuid(), user: this.user, content: this.content}

console.log('id is: ' + this.createUuid())

var list = JSON.parse(localStorage.getItem('cmts') || '[]')

list.unshift(content)

localStorage.setItem('cmts', JSON.stringify(list))

this.user = this.content = null

this.$emit('loadComment')

} else {

alert("评论人或内容不能为空!");

}

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值