我正在尝试使用Angular2,打字稿,手写笔(用于css)和pug(用于html模板)构建应用程序.
但是,我无法使用Angular2 Universal.
问题是我使用ts节点来运行我的服务器代码,每当我导入我的App组件时,都会发生错误.
server.ts(node / express):
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: Unexpected token :
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
解决方法
您可以使用预编译来使用手写笔:手写笔 – > css – >样式:[require(.css)].
模板也可以预编译或处理如下:
function compile(template:string) { pug.compile(template,{}); } //component definition template: compile(require('template.pug'))