[英]'unused expression, expected an assignment or function call' in an angular unit test when running tslint
[英]Can you create a class before exporting it in typescript/angular? | TSLint: unused expression, expected an assignment or function call
我來自反應世界 - 我非常熟悉通過index.js
啟動應用程序的基本概念,而不必處理任何 html 或任何東西。 在那些定義視圖的 javascript 文件中,它們都通過import
和export
彼此可用,其中export default
意味着默認導入將是 object,而僅export
允許從同一文件導入多個對象的可能性。
綜上所述,angular 中的一切都不同嗎?
在我嘗試學習它的同時,我嘗試做一些簡單的事情並創建一個日志記錄 class,這必須足夠簡單,對吧。 所以它看起來像這樣,這就是我在 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:未使用的表達式,需要賦值或 function 調用...
在最后一行。 我不能在導出之前創建類嗎?
我知道我看到的每個教程都包含導出 class 中的所有內容,我不習慣(這就是我嘗試以其他方式進行操作的原因)但如果這只是 Angular 最佳實踐,那就這樣吧。
TLDR 為什么我在上面的代碼中出錯
這與框架無關,而是關於 TypeScript 與 JavaScript。我猜你在使用 React 時使用過 JavaScript 模塊。 在 Typescript 中語法有點不同。 在typescript中寫下你想要的...
class LoggerService {
// ...
}
export { LoggerService };
您可以閱讀有關TypeScript 模塊的更多信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.