JavaScript错误(未捕获的SyntaxError:意外的输入结束)为什么?

时间:2018-05-24 16:34:25

标签: javascript asp.net-mvc angular

为什么呢?我已经检查过并且对我来说没有遗漏a)。}

课程:

export class Boletim {
    nuMes: string =  '';
    nuAno: string =  '';
    dsTitulo: string =  '';
    dsDetalhes: string = '';
    urlImagem: string = '';
    urlPdf: string = '';
}

我的组件:

export class HomeBoletimComponent {

    item: Boletim[] = [];

    ngOnInit() {
        this.fnListar();
    }

    fnListar() {
        this.dbService.get('Boletim/ListaBoletim').subscribe(result => {
            this.item = result;
        });
    }

    constructor(
        private dbService: DbService,
        private SpinnerService: SpinnerService
    ) { }
}

服务和班级服务:

[Route("ListaBoletim")]
[HttpGet]
public List<Boletim> ListaBoletim()
{
    try
    {
        var listaBoletim = bBoletim.ListAll();

        if (listaBoletim.Count > 0)
        {
            return listaBoletim;
        }
        else
            return null;
    }
    catch (Exception ex)
    {
        throw new Exception();
    }
}

public partial class Boletim
{
    public int IdBoletim { get; set; }
    public short NuMes { get; set; }
    public short NuAno { get; set; }
    public string DsTitulo { get; set; }
    public string DsDetalhes { get; set; }
    public string UrlImagem { get; set; }
    public string UrlPdf { get; set; }
}

我注意到服务和类之间的属性nuMes和nuAno的类型不同,这可能是问题吗?

2 个答案:

答案 0 :(得分:0)

试试这个

export class HomeBoletimComponent {

  item: Boletim[] = [];

  ngOnInit() {
    this.fnListar();
  }

  fnListar() {
    this.dbService.get('Boletim/ListaBoletim').subscribe(result => {
      this.item = result;
    });
  }

  constructor(
    dbService: DbService,
    spinnerService: SpinnerService
  ) {
    this.dbService = dbService;
    this.spinnerService = spinnerService;
  }
}

答案 1 :(得分:-1)

我同意T.J. Crowder

  

如果您拥有类定义或对象初始化程序中的内容,那么在任何现代环境中都可以使用它(它是ES2015 +方法语法)。就其本身而言,它在开头缺少函数关键字。

但更进一步,我想提一下你可能会收到错误,因为你在括号中没有使用return语句,因为它正在使用括号:

 this.dbService.get('Boletim/ListaBoletim').subscribe(result => 
   ({this.item = result})
 )

或者,您也可以使用return声明编写:

 this.dbService.get('Boletim/ListaBoletim').subscribe(result => 
   return {this.item = result} // To fix, use parentheses
 )
顺便说一下,我不完全确定是否因为没有使用括号而引发错误。因为,这取决于项目环境。我的意思是你如何设置或工作babel项目,...?如果这与此相关,那么使用上述括号将解决问题。

我写过这个答案,因为在处理create-react-app创建的react应用程序时,这些修复工作非常顺利。希望,这对你也有帮助。