Типовые литералы ES6/ECMA6 - не работают

Я хотел попробовать использовать литералы шаблонов, и он не работает: его отображение имен переменных буквальной, а не значений. Я использую Chrome v50.0.2 (и jQuery).

Пример:

console.log('categoryName: ${this.categoryName}\ncategoryElements: ${this.categoryElements} ');

Вывод:

${this.categoryName} 
categoryElements: ${this.categoryElements} 

Ответ 1

Литералы шаблонов JavaScript требуют обратных ссылок, а не прямых кавычек.

Вам нужно использовать обратные образы (иначе называемые "серьезными акцентами", которые вы найдете рядом с ключом 1), а не одинарные кавычки - для создания литерала шаблона.

Backticks распространены во многих языках программирования, но могут быть новыми для разработчиков JavaScript.

Пример:

categoryName="name";
categoryElements="element";
console.log(`categoryName: ${this.categoryName}\ncategoryElements: ${categoryElements} `) 

Выход

VM626:1 categoryName: name 
categoryElements: element

См: Каково использование символа обратной ссылки (`) в JavaScript?

Ответ 2

1.) Добавьте .jshitrc того же уровня папок с вашими app.js и другими файлами

2.) поместите это во вновь созданный файл {"esversion": 6}

3.) Никогда не используйте одинарные кавычки "использовать обратные ссылки"

Ответ 3

// Example
var person = {
  name: "Meera",
  hello: function(things) {
    console.log('${this.name} Says hello ${things}');
  }
}

// Calling function hello
person.hello("World");

//Meera Says hello World