【发布时间】:2019-04-28 09:57:15
【问题描述】:
在我的组件中添加服务时,我在开发工具控制台上遇到了很多错误,但代码仍然有效,但我想摆脱这些错误
这是服务:
getPagesData(pageSlug: string): Observable<any[]> {
return this._http.get<any[]>(`${environment.apiUrl}wp/v2/pages/?slug=${pageSlug}`);
}
这是组件:
import { Component, OnInit } from '@angular/core';
import { DataService } from 'src/app/services/data.service';
@Component({
selector: 'app-membership',
templateUrl: './membership.page.html',
styleUrls: ['./membership.page.scss'],
})
export class MembershipPage implements OnInit {
public pageContent: any = {};
public content: string;
constructor(
private _data: DataService
) { }
ngOnInit() {
this._data.getPagesData('memberships')
.subscribe(
page => this.pageContent = page[0]
)
}
getContent(): string {
return this.pageContent.content.rendered.replace(/\[(.+?)\]/g, "");
}
}
导致错误的原因是 getContent() 方法!它说 .rendered 是一个未定义的属性,但它在 API 上定义了!
我已经搜索过这个问题,我发现大多数解决方案都是关于在 HTML 模板中使用符号 ? 但我不能在组件本身中使用它。
【问题讨论】:
-
你能在 stackblitz 上创建一个最小复制吗?
-
当你想改变一些内容或修改它时使用管道。参见stackoverflow的以下讨论stackoverflow.com/questions/42693244/…官方角度指南:angular.io/guide/pipes
-
您需要分享您呼叫
getContent()并尝试使用pageContent的确切位置。
标签: javascript angular ionic-framework angular7