相关疑难解决方法(0)

(Angular 6)Angular Universal - 不等待内容API调用

将Angular Universal与使用动态内容的页面一起使用时,无法使SSR正常工作.所有其他页面都有效,动态页面返回HTML但不包含动态数据.

方法叫:

ngOnInit() {
  const div = this.renderer.createElement('div');
  const texttest = this.renderer.createText('this works');

  this.renderer.appendChild(div, texttest);
  this.renderer.appendChild(this.content.nativeElement, div);

  this.createLinkForCanonicalURL();

  // The HTML never shows, the method works fine.
  this._contentfulService.getBlogPosts().then(posts => {
    this.blogPosts = _.orderBy(posts, ['sys.createdAt'], ['desc']);
  });
}
Run Code Online (Sandbox Code Playgroud)

服务方式

getBlogPosts(query ? : object): Promise<Entry<any>[]> {
  return this.cdaClient.getEntries(Object.assign({
      content_type: CONFIG.contentTypeIds.blogPosts
    }, {
      'fields.private': false
    }))
    .then(res => res.items);
}
Run Code Online (Sandbox Code Playgroud)

模板:

这从未在源中显示.

<li class="blog-post" *ngFor="let post of blogPosts">
  <h1>{{post.fields.title}}</h1>
</li>
Run Code Online (Sandbox Code Playgroud)

尝试过入门套件并且它们无法调用相同的方法.还尝试使用render2注入和解析器服务来测试在加载之前获取数据.

似乎什么都没有用?

任何帮助,将不胜感激!

编辑

这是我的server.ts文件

// These are important and needed before …
Run Code Online (Sandbox Code Playgroud)

angular-universal ssr angular angular6

11
推荐指数
1
解决办法
1826
查看次数

标签 统计

angular ×1

angular-universal ×1

angular6 ×1

ssr ×1