返回对象时出现Vue.js语法错误

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (176)

我正在使用Vue在Laravel中编写一个简单的博客应用程序。我的一个返回值是一个对象,但是在编译时它会给出这个错误。

  SyntaxError: Unexpected token, expected ; (15:20)

  13 |         {
  14 |             blogposts: [],
> 15 |             blogpost:
     |                     ^
  16 |             {
  17 |                 id: '',
  18 |                 author: '',

如何从data函数返回一个对象?

根据请求,这是实际.vue代码。

<template>
    <div>
        <h2>Blog Posts</h2>
    </div>
</template>

<script>
    export default 
    {
        data()
        {
            return 
            {
                blogposts: [],
                blogpost:
                {
                    id: '',
                    author: '',
                    title: '',
                    body: ''
                },
                blogpost_id: '',
                pagination: {},
                edit: false
            };
        },

        created()
        {
            this.fetchBlogPosts();
        },

        methods:
        {
            fetchBlogPosts()
            {
                fetch('api/posts')
                    .then(res => res.json())
                    .then(res => {
                        console.log(res.data);
                    });
            }
        }

    };
</script>
提问于
用户回答回答于

括号必须位于返回的同一行。因为返回符号在同一行中查找后面的代码。因此,你将返回一个空行,有以下错误:

 data()
    {
        return {   //Took the bracket here
            blogposts: [],
            blogpost:
            {
                id: '',
                author: '',
                title: '',
                body: ''
            },

你可以使用链接器来防止这类错误(如eslint)。

扫码关注云+社区

领取腾讯云代金券