angular色2等效的renderToString
我正在寻找相当于react-dom/server.renderToString
的angular度2
import { renderToString } from 'react-dom/server'; // Render the component to a string const html = renderToString( <App /> );
使用NodeJs将指令/组件转换为HTML的最简单代码示例是什么?
我想这应该是可能的这些包之一:
-
@ angular / compiler – v2.0.0-rc.2
-
@ angular / platform-server – v2.0.0-rc.2
Angular组件使用HTML模板作为开发过程的一部分,但我们实际上将这些模板编译为Javascript,而不是HTML,以便将它们呈现给浏览器。
最接近的事情可能会帮助你看看https://github.com/angular/universal 。 这个项目代表了在服务器上运行你的Angular组件的最好方法,它能够呈现JavaScript和HTML,并通过networking传递给浏览器。
我们不能提供一个简单的方法来“渲染”HTML,因为任何types的“渲染”都涉及整个Angular框架(核心,公共,模板编译)和处理整个组件树。
希望这可以帮助!
import 'angular2-universal/polyfills'; import { provide, REQUEST_URL, ORIGIN_URL, NODE_ROUTER_PROVIDERS, NODE_HTTP_PROVIDERS, Bootloader } from 'angular2-universal'; import { APP_BASE_HREF } from '@angular/common'; const bootloader = new Bootloader({ platformProviders: [ {provide: ORIGIN_URL, useValue: 'http://localhost:3000'}, {provide: APP_BASE_HREF, useValue: '/'} ], async: true, preboot: false // { appRoot: 'app-root' } // your top level app component selector }); export function ngApp(req, res) { let url = req.originalUrl || '/'; const config = { template: `<!doctype html><html><head>...</head><body>...</body></html>`, directives: [AppComponent], providers: [ {provide: REQUEST_URL, useValue: url}, ...NODE_ROUTER_PROVIDERS, ...NODE_HTTP_PROVIDERS ] }; bootloader.serializeApplication(config) .then(html => res.send(html)); }
- TypeScript编译器很慢(6-10s)
- Uncaught TypeError:useValue,useFactory,数据是不可迭代的! Angular 4 cli项目错误
- NPM如何启动一个Angular和Typescript应用程序?
- 如何在angular2应用程序中包含时区 – 时区
- 将Angular 5项目转换为Angular Universal
- 使用量angular器/ saucelabs禁用输出
- Angular Universal + Express Server花了很长时间才得到第一个响应
- 找不到模块'jasmine-reporter'
- 我怎样才能启动我的angular色cli项目在Ubuntu服务器上?