直接在Component类中初始化组件的属性与在ngOineit方法中初始化组件属性有什么不同?

Example :

@Component({})
export class AppComponent {
    property: string = 'some initial value'
}

   **VS**

@Component({})
export class AppComponent implements OnInit{
    property: string;

    ngOninit(): void {
        this.property = 'some initial value';
    }
}

推荐答案

读数约为Angular Lifecycle Hooks.

这里有一个简单的示例,其中您只是将property设置为静态值,但是对于property的值依赖于API服务的情况,您应该使用life-cycle hooks来处理这些值

使用从API service获取的值设置property的简单示例,该API service将从REST API获取数据

@Component({})
export class AppComponent implements OnInit{
    property: string;
    constructor(private apiService:ApiService){}
    ngOninit(): void {
        this.apiService.getAPIData.subscribe((data)=>{
          this.property = data;
        });
    }
}

Here是解释@Input可用性与ngOninit可用性的另一个比较

Angular相关问答推荐

如何在Angular应用程序部署中安全地管理环境变量

如何取消针叶林输入的自动填充?

身份验证卫士给了我17个Angular 的任何类型

更改图表上的光标以进行zoom

Angular react 形式验证问题

Angular 17水化-POST请求同时触发客户端/服务器端,而GET请求仅触发服务器端?

如何将表单作为Angular 分量输入传递?

一次重定向后,所有子路由都处于活动状态

使用指令的 Angular 自定义验证在 ng-change 中无法正常工作

Angular Http 拦截器 - 修改标头会导致 CORS

从组件调用时服务中的 AddTodo 方法不起作用

如果Angular 数据为空,如何设置N/A

如何在 form.value 中禁用复选框

将 injectiontoken 用于 Angular 中的模块特定设置

ng14中具有强类型表单的FormBuilder

使用directive指令将类添加到host元素中

Angular 2:为什么在检索路由参数时使用 switchMap?

Angular2中是否有像window.onbeforeunload这样的生命周期钩子?

单元测试错误:无法从同步测试中调用 Promise.then

如何在 Angular 2 中链接 HTTP 调用?