Microsoft/TypeScript

Gracefully handle template literal properties in the parser

Open

#1,057 创建于 2014年11月4日

在 GitHub 查看
 (0 评论) (2 反应) (0 负责人)TypeScript (48,455 star) (6,726 fork)batch import
Domain: Error MessagesEffort: ModerateExperience EnhancementHelp Wanted

描述

var x = {
    a: "Hello"
    `b`: 123
}

Right now, the parser encounters the template string, decides it should bail out of object literal parsing, and we more or less recover thinking we have something like the following:

var x = ({ a: "Hello" } `b`) : 123 }

So we'll report an error on what we think is:

{ a: "Hello" } `b`
  • On the syntactic layer under ES5 mode, we'll say tagged templates are not supported unless in ES6.
  • On the semantic layer, we'll say { a: "Hello" } is not invokable.

贡献者指南