在WebStorm 8生成的node.js+Expres+Jade+Stylus项目中,我在哪里添加NIB

Where do I add NIB in a WebStorm 8 generated node.js + Expres + Jade + Stylus project?

本文关键字:在哪里 NIB 添加 项目 js+Expres+Jade+Stylus 8生 WebStorm node      更新时间:2023-09-26

我正在尝试使用WebStorm 8开始使用node.js、Express、Jade、Styl和NIB。不幸的是,WebStorm没有提供开箱即用的NIB支持,所以我正在寻找如何手动添加它。

它生成的app.js如下所示:

/**
 * Module dependencies.
 */

var express = require('express'); var routes = require('./routes'); var user = require('./routes/user'); var http = require('http'); var path = require('path');

var app = express();

// all environments app.set('port', process.env.PORT || 3000); app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'jade'); app.use(express.favicon()); app.use(express.logger('dev')); app.use(express.json()); app.use(express.urlencoded()); app.use(express.methodOverride()); app.use(app.router); app.use(require('stylus').middleware(path.join(__dirname, 'public'))); app.use(express.static(path.join(__dirname, 'public')));

// development only if ('development' == app.get('env')) { app.use(express.errorHandler()); }

app.get('/', routes.index); app.get('/users', user.list);

http.createServer(app).listen(app.get('port'), function(){ console.log('Express server listening on port ' + app.get('port')); });

据我所知,从谷歌上搜索这些东西,就会有一段像这样的代码

function compile(str, path) {
  return stylus(str)
    .set('filename', path)
    .use(nib()) // <-here it goes!
}

但我找不到这样的地方。在这种情况下,如何将NIB连接到堆栈?

请原谅我的一个小问题。请帮忙。我有基本的JavaScript技能(过去用老式的手动方式为客户端编写一些代码),但在这种情况下有点困惑。是的,如果可能的话,我真的更喜欢IDE的方式——我相信我可以从头开始创建项目,这样不会那么令人困惑,但我喜欢使用代码完成、调试之类的东西来探索这些东西——这是我最喜欢的学习方式,但在这种情况下,我只需要一点推动就可以开始了。谢谢

这是一个老问题,但要将任何手写笔库添加到webstorm中,您需要修改文件查看器

请参阅:https://devnet.jetbrains.com/message/5501662#5501662例如如何为nib这样做,但这也适用于网络风暴8/9中的jeet。

您需要让手写笔中间件调用编译函数。尝试:

var express = require('express');
var routes = require('./routes');
var user = require('./routes/user');
var http = require('http');
var path = require('path');
var nib = require('nib');
var stylus = require('stylus');
var app = express();
// all environments
app.set('port', process.env.PORT || 3000);
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');
app.use(express.favicon());
app.use(express.logger('dev'));
app.use(express.json());
app.use(express.urlencoded());
app.use(express.methodOverride());
app.use(app.router);
app.use(stylus.middleware(
  { src: __dirname + '/public'
  , compile: compile
  }
))
app.use(express.static(path.join(__dirname, 'public')));
// development only
if ('development' == app.get('env')) {
  app.use(express.errorHandler());
}
app.get('/', routes.index);
app.get('/users', user.list);
http.createServer(app).listen(app.get('port'), function(){
  console.log('Express server listening on port ' + app.get('port'));
});
function compile(str, path) {
  return stylus(str)
    .set('filename', path)
    .use(nib()) // <-here it goes!
}