Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/27.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.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
在以typescript/angular格式导出类之前,是否可以创建一个类TSLint:未使用的表达式,应为赋值或函数调用_Angular_Typescript_Tslint - Fatal编程技术网

在以typescript/angular格式导出类之前,是否可以创建一个类TSLint:未使用的表达式,应为赋值或函数调用

在以typescript/angular格式导出类之前,是否可以创建一个类TSLint:未使用的表达式,应为赋值或函数调用,angular,typescript,tslint,Angular,Typescript,Tslint,我来自react世界——我非常熟悉通过index.js启动应用程序的基本概念,并且不必处理任何html或任何东西。在那些定义视图的javascript文件中,它们都通过import和export彼此可用,其中export default意味着默认导入将是该对象,而仅export允许从同一文件导入多个对象 说了这么多,在角度上有什么不同吗 当我试图学习它时,我尝试做一些简单的事情,创建一个日志类,它必须足够简单,对吗。看起来是这样的,这是我在React中写的: import {Injectable

我来自react世界——我非常熟悉通过
index.js启动应用程序的基本概念,并且不必处理任何html或任何东西。在那些定义视图的javascript文件中,它们都通过
import
export
彼此可用,其中
export default
意味着默认导入将是该对象,而仅
export
允许从同一文件导入多个对象

说了这么多,在角度上有什么不同吗

当我试图学习它时,我尝试做一些简单的事情,创建一个日志类,它必须足够简单,对吗。看起来是这样的,这是我在React中写的:

import {Injectable} from '@angular/core';

@Injectable()
class LoggerService {
  info(msg: any) {
    console.log(msg);
  }

  warn(msg: any) {
    console.warn(msg);
  }

  error(msg: any) {
    console.error(msg);
  }
}

export LoggerService;
然而,当我这么做的时候,我的TSLint会提醒我

TSLint:未使用的表达式,应为赋值或函数调用

在最后一行。在导出类之前不能创建它们吗

我知道我看过的每一个教程都包含了导出类中的所有内容,我不习惯这样做(这就是为什么我试图用另一种方式来做),但如果这只是最佳实践,那就这样吧


TLDR为什么上面的代码会出错

这与框架无关,而是与TypeScript vs JavaScript有关。我猜您在使用React时使用了JavaScript模块。在Typescript中,语法有点不同。要在typescript中编写所需内容

类日志服务{
// ...
}
导出{LoggerService};

您可以阅读更多信息。

您应该改为编写
导出类LoggerService{…}
我知道,它已经在我的文章的最后一段中了-我只是想弄清楚为什么必须这样做作为后续,有人真的写过这样的代码吗?还是一般人都不喜欢这样的代码?我最近和很多人一起工作,我通常写
export class…
语法。此外,我通常只从文件中导出一个项目,除了一些实用功能或模型(它们不与组件/服务等耦合在一个文件中),例如
user.utils.ts
user.model.ts
。由于新开发人员通常习惯于在文档中编写它的方式,这会更方便一些。