Angular 客户端异步。具有服务器端呈现的请求
我想我会尝试一下使用Angular4/Node.js进行搜索引擎优化,但是遇到了一个挑战 Angular Universal使我能够进行服务器端渲染,这样我就可以在我的页面进入浏览器之前将我的元关键字、标题、图像URL等注入HTML——太棒了!现在的挑战是,在某种程度上,我希望至少能够在客户端异步地做一些事情,例如获取一些JSON数据,甚至捕获角度单击事件 在使用下面的示例时,我似乎无法完成这类工作 home.component.tsAngular 客户端异步。具有服务器端呈现的请求,angular,universal,server-side-rendering,Angular,Universal,Server Side Rendering,我想我会尝试一下使用Angular4/Node.js进行搜索引擎优化,但是遇到了一个挑战 Angular Universal使我能够进行服务器端渲染,这样我就可以在我的页面进入浏览器之前将我的元关键字、标题、图像URL等注入HTML——太棒了!现在的挑战是,在某种程度上,我希望至少能够在客户端异步地做一些事情,例如获取一些JSON数据,甚至捕获角度单击事件 在使用下面的示例时,我似乎无法完成这类工作 home.component.ts import { Component, OnInit } f
import { Component, OnInit } from '@angular/core';
import { Http, Response } from '@angular/http';
@Component({
selector: 'home',
template: `<button (click)="fetch();">Fetch some json</button>`,
styleUrls: ['./home.component.scss']
})
export class HomeComponent implements OnInit {
constructor(
private _http: Http
) {}
ngOnInit() {}
public fetch(){
console.log("Clicked"); // Does not happen
this._http.get('./i18n/da.json')
.subscribe((r: Response) => {
console.debug(r.json()); // Also not happening
});
}
}
从'@angular/core'导入{Component,OnInit};
从'@angular/Http'导入{Http,Response};
@组成部分({
选择器:“主页”,
模板:`fetchsomejson`,
样式URL:['./home.component.scss']
})
导出类HomeComponent实现OnInit{
建造师(
私有http:http
) {}
ngOnInit(){}
公共获取(){
console.log(“单击”);//不发生
这个._http.get('./i18n/da.json'))
.订阅((r:响应)=>{
console.debug(r.json());//也没有发生
});
}
}
在使用Universal进行服务器端渲染时,这样的事情是不可能发生的吗?你们将如何实施这一点
干杯 我不确定你的意图是什么,但我认为这可能是其中之一: