Есть ли какие-либо последствия использования глобальных / оконных переменных в самом шаблоне angular? - PullRequest
0 голосов
/ 28 января 2020

Есть ли какие-либо последствия использования глобальных / оконных переменных в самом шаблоне angular?

Пример

sample-template.ts

export class SampleComponent {
  console = console;
  myArr = Array;
  myObj = Object;
  data = [{name: 'abc', ...}, {myName: 'xyz', ...}, {fullName: 'pqr', ...}]
}

образец-шаблон. html

<div>{{console.log('It logs')}}</div>

<div *ngFor="let each of Arr(4).fill(1);let i=index;">{{'I just need index here' + i}}</div>

<div *ngFor="let item of data">
 <div *ngFor="let col of myObj.keys(item)">{{col}}</div>
</div>

1 Ответ

0 голосов
/ 28 января 2020

Да, вы не можете использовать глобальные переменные, у них есть свои ограничения

С точки зрения синтаксиса, выражения шаблонов похожи на JavaScript. Многие JavaScript выражения являются допустимыми шаблонными выражениями, за некоторыми исключениями.

Нельзя использовать JavaScript выражения, которые имеют или способствуют побочным эффектам, включая:

Назначения (=, + =, - =, ...) Операторы, такие как new, typeof, instanceof и др. c. Цепные выражения с; или, операторы увеличения и уменьшения ++ и - некоторые из операторов ES2015 +

...