簡體   English   中英

如何在 angular v14 中的純 function 中使用 class 外部注入?

[英]How to use inject outside class in pure function in angular v14?

我想注入我的FooService並僅在單擊按鈕時使用它。

但我得到了這個錯誤:

Error: NG0203: inject() must be called from an injection context (a constructor, a factory function or a field initializer)

有沒有辦法通過inject使其工作將在單獨的 function 中?

堆棧閃電戰

import { Component, inject, VERSION } from '@angular/core';
import { FooService } from './foo.service';

const load = () => {
  const foo = inject(FooService);
  foo.doSome();
};

@Component({
  selector: 'my-app',
  template: `in app! <button (click)="onClick()">click </button>`,
})
export class AppComponent {
  name = 'Angular ' + VERSION.major;

  onClick() {
    load();
  }
}

恐怕這是不可能的。

您可以在此處找到錯誤說明以及使用inject的所有可能有效方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM