Javascript res.render()之后,手写笔未应用于我的jade文件
我似乎无法将项目中的手写笔文件编译成css文件,以便与jade文件一起使用。jade文件的内容将显示在浏览器中,但未按照.styl文件中指定的格式进行格式化 我认为这与我使用的路径有关。我对“/public”感到困惑,它应该是我在项目树中实际创建的目录,还是只是当前位置的占位符或类似的东西 以下是我所需的模块:Javascript res.render()之后,手写笔未应用于我的jade文件,javascript,node.js,express,pug,stylus,Javascript,Node.js,Express,Pug,Stylus,我似乎无法将项目中的手写笔文件编译成css文件,以便与jade文件一起使用。jade文件的内容将显示在浏览器中,但未按照.styl文件中指定的格式进行格式化 我认为这与我使用的路径有关。我对“/public”感到困惑,它应该是我在项目树中实际创建的目录,还是只是当前位置的占位符或类似的东西 以下是我所需的模块: var express = require('express'), connect = require('connect'), account = require('./
var express = require('express'),
connect = require('connect'),
account = require('./account'),
stylus = require('stylus'),
nib = require('nib'),
http = require('http'),
path = require('path');
var app = express();
下面是我的配置代码:
function compile(str, path) {
return stylus(str)
.set('filename', path)
.use(nib())
}
app.configure('development', function(){
app.set('port', process.env.PORT || 8888);
app.set('views', __dirname + '/views');
app.set('view engine', 'jade');
app.use(express.favicon());
app.use(express.logger('dev'));
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(app.router);
app.use(express.static(path.join(__dirname, 'public')));
app.use(express.bodyParser());
app.use(express.cookieParser('1234567890QWERTY'));
app.use(express.session({secret: '1234567890QWERTY'}));
app.use(express.errorHandler());
app.use(stylus.middleware({
src: __dirname + '/public',
dest: __dirname + "/css",
compile: compile
}
));
});
下面是我的处理程序:
app.get('/', function(req, res) {
res.render('index',{title: 'Home'});
});
我的目录树当前将我的脚本文件放在项目根目录下,然后样式表、视图、css和节点模块目录也都放在根目录下。没有“公共”目录
app.use(stylus.middleware({
dest: __dirname + '/public',
src: __dirname + "/css",
compile: compile
}
))
目的地应位于公共目录中。并且你的src包含你的.styl文件答案是在我调用我的应用程序的地方。使用(express.static())命令,它需要在代码之后使用手写笔中间件。我发现这篇文章为解决我的问题提供了信息:
[1] :article我将style.styl和style.css文件放在“/public/stylesheets”文件夹中,并将src和dest都更改为u dirname+“/public/stylesheets”。我仍然没有看到浏览器的格式化输出,只是index.jade文件的内容。