Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 角度2块范围变量问题_Angular_Typescript_Angular2 Directives_Angular2 Decorators - Fatal编程技术网

Angular 角度2块范围变量问题

Angular 角度2块范围变量问题,angular,typescript,angular2-directives,angular2-decorators,Angular,Typescript,Angular2 Directives,Angular2 Decorators,我目前正在使用TypeScript运行Angular 2演示。有两个文件:作为模板导入的index.html文件和TypeScript文件。TypeScript文件编译成一个pomodoro timer.js,对于这个演示,所有类都包含在一个文件中: pomodoro定时器.ts 熟悉TypeScript的人知道我为什么会出现这些错误吗?我正在使用带有TypeScript插件的Atom IDE。1)首先,您有一个打字错误taskService,而不是taskService 2) 您不应该像这里那

我目前正在使用TypeScript运行Angular 2演示。有两个文件:作为模板导入的index.html文件和TypeScript文件。TypeScript文件编译成一个pomodoro timer.js,对于这个演示,所有类都包含在一个文件中:

pomodoro定时器.ts

熟悉TypeScript的人知道我为什么会出现这些错误吗?我正在使用带有TypeScript插件的Atom IDE。

1)首先,您有一个打字错误
taskService
,而不是
taskService

2) 您不应该像这里那样实例化TasksService

constructor() {
  const TasksService: TasksService = new TasksService();
  this.tasks = taskService.taskStore;
  this.today = new Date();
}
你应该把代码改成这样

constructor(private taskService:TasksService) {
  this.tasks = this.taskService.taskStore;
  this.today = new Date();
}

要了解有关依赖项注入和最佳实践的更多信息,请检查此链接,如果您像这样初始化对象

const TasksService: TasksService = new TasksService();
您将收到以下错误

Blocked-scoped variable 'TasksService' used before its declaration.
要解决此问题,请将变量的名称更改为其他名称,如

const TaskServ: TasksService = new TasksService();   
注意:当您声明一个与类(对象)同名的变量时,通常会出现此错误


TasksService!==TaskService
我没有注意到这一点。我们的新演示使用了从Angular2API文档中获得的命名约定。谢谢非常感谢。虽然我不必为了让它工作而更改参数格式,但我们的演示似乎没有遵守构造函数(如类)和变量的大小写规则。再次感谢!
const TasksService: TasksService = new TasksService();
Blocked-scoped variable 'TasksService' used before its declaration.
const TaskServ: TasksService = new TasksService();