/ / Ъглово 2 Универсално - странично преобразуване на сървъра със стилус и мостра шаблон - ъглова, уеб пакет, ъглова2-универсална

Уигъл 2 Универсално - Сървърно отпечатване със стилус и шаблон за молив - ъглова, уеб пакет, ъглова2-универсална

Опитвам се да създам приложение с Angular2, машина, стилус (за CSS) и мопс (за HTML шаблониране).

Но не мога да работя с Angular2 Universal.

Проблемът е, че използвам ts-node за да стартирам кода на сървъра си и когато импортирам моя компонент на приложението, възникна грешка.

import "angular2-universal/polyfills";

import * as path from "path";
import * as express from "express";
import * as bodyParser from "body-parser";


// Angular 2 Universal
import {
provide,
enableProdMode,
expressEngine,
REQUEST_URL,
ORIGIN_URL,
BASE_URL,
NODE_ROUTER_PROVIDERS,
NODE_HTTP_PROVIDERS,
ExpressEngineConfig
} from "angular2-universal";

// Application
import {App} from "./app/modules/app";

Възникна грешка:

app / modules / app / app.styl: 2 margin-bottom: 10px ^ SyntaxError: Неочаквано означение:

app.ts

import {Component, ViewEncapsulation} from "@angular/core";
import {RouteConfig, Router, ROUTER_DIRECTIVES} from "@angular/router-deprecated";

import {Home} from "../home";


/*
* App Component
* Top Level Component
*/
@Component({
selector:      "app",
pipes:         [ ],
providers:     [ ],
directives:    [ ],
encapsulation: ViewEncapsulation.None,
styles:        [
require("./app.styl")
],
template: require("./app.pug")
})

app.styl

input
margin-bottom: 10px

Алтернативата е да изпълните кода за създаване (генериран от уеб пакета). Но как мога да направя това, тъй като кодът е обвит webpackjsonp функция.

Отговори:

0 за отговор № 1

Можете да използвате стилуса с помощта на предварително компилиране: стилус -> css -> styles: [require(.css)].

Шаблоните могат да бъдат предварително компилирани или обработени така:

function compile(template:string)
{
pug.compile(template, {});
}

//component definition
template: compile(require("template.pug"))