首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Setup函数说对象没有定义,即使它是在函数中定义的,也会被返回

Setup函数说对象没有定义,即使它是在函数中定义的,也会被返回
EN

Stack Overflow用户
提问于 2021-08-12 16:07:49
回答 1查看 18关注 0票数 0

它说newBlog没有定义,但是我正在从设置函数返回它,并在事件处理函数中使用它,我不明白问题可能是什么?

代码语言:javascript
复制
<template>
  <form @submit="onSubmit" class="add-form">
     ...
  </form>
</template>

<script>
import { ref } from '@vue/reactivity'
    export default {
        setup() {
            const title = ref('')
            const body = ref('')
            
            const onSubmit = (e) => {
                e.preventDefault()

                const newBlog = {
                    title: title,
                    body: body
                }

                this.$emit('add-blog', newBlog)

                title.value = ''
                title.body = ''
            }
            return { title, body, onSubmit, newBlog }

        }
    }
</script>
EN

回答 1

Stack Overflow用户

发布于 2021-08-12 16:12:25

newBlog是在onSubmit函数内部声明的,它不能在该作用域之外访问,从而导致您观察到的错误。

要解决此问题,请将newBlog声明移到onSubmit之外

代码语言:javascript
复制
export default {
  setup() {
    //...

    const newBlog = {...}

    const onSubmit = (e) => {
      this.$emit('add-blog', newBlog)
    }

    return { title, body, onSubmit, newBlog }
  }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68760837

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档