我正在使用节点。在应用程序中,我创建了一个名为' styles'在我创建了一个名为' style.styl'的文件夹中。现在我需要编译这个文件,我想有一个新的' style.css'文件在同一文件夹中。因为我使用这个功能,但请不要帮忙吗?
var http = require('http'),
express = require('express'),
path = require('path'),
jade = require('jade'),
stylus = require('stylus'),//i am requiring stylus
nib = require('nib'), // nib as well
fs = require('fs'),
app = express();
function compile(str, path) { //dynamically i am comiling here
return stylus(str)
.set('filename', path)
.use(nib());
}
app.set('view engine', 'jade');
app.set('views', __dirname);
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(app.router);
app.use(express.static(__dirname));
app.use(stylus.middleware({ // i am using midware to take care of styl files. but no result
src: __dirname + '/styles',
dest: __dirname + '/styles',
compile: compile,
debug: true,
force: true
}));
有人帮我吗?
答案 0 :(得分:0)
删除第app.use(app.router)
行。我怀疑你的手写笔中间件根本没有被执行,因为快速点击路由器并在手写笔之前发送404错误,因为中间件的顺序很重要。
答案 1 :(得分:0)
我自己开始知道,手写笔不能直接将样式文件放在根目录上。相反,它需要一个文件夹来通知。我创建了一个静态文件夹来解决这个问题。
有效。感谢所有人。