angular - 您可以在将其导出为 typescript/angular 之前创建一个类吗?| TSLint:未使用的表达式,期望赋值或函数调用
问题描述
我来自 react 世界——我非常熟悉通过 an 启动应用程序的基本概念,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:未使用的表达式,需要赋值或函数调用...
在最后一行。我不能在导出之前创建类吗?
我知道我看到的每个教程都包含导出类中的所有内容,这是我不习惯的(这就是我尝试以另一种方式做的原因),但如果这只是 Angular 的最佳实践,那就这样吧。
TLDR 为什么我在上面的代码中出现错误
解决方案
这不是关于框架,而是关于 TypeScript 与 JavaScript。我猜你在使用 React 时使用过 JavaScript 模块。在 Typescript 中,语法有点不同。在打字稿中写下你想要的东西......
class LoggerService {
// ...
}
export { LoggerService };
您可以阅读有关TypeScript 模块的更多信息。
推荐阅读
- javascript - 删除列中的重复值
- arrays - 在Scala中将字符串拆分为二维数组
- reactjs - Redux-Form 7 验证 - 功能组件
- c - 套接字:显示客户端的 ip 和主机名
- jquery - 当一个div不包含jquery的值时如何隐藏它
- angular - 与第三方库(Angular 2+)一起使用时自定义指令不起作用
- python - 对象已创建,但 OOP 版本中没有移动
- javascript - OpenCV.js 断言在 detectMultiScale 中失败
- javascript - 在组合框字段的渲染器中加载存储时出现问题
- pervasive - 如何从 Docker 容器中查询 Pervasive v13 数据库?