手写笔全局变量

Stylus global variables

我有一个 core.styl 用于放置网格样式、一些手写笔功能和一些变量。该文件应该导入到我的 all 路由中。

除此之外,我还有一个 page.styl,这取决于我当前的路线(例如 contact.styl for /contact)

注意:我的项目基于 angular.js,因此 html-head 不会重新定位。但是我可以在 html-head 中添加一些带有 angular 的东西,比如

我尝试关注

//index.html
<link rel="stylesheet" href="/css/core.css" /> <-- this is static, always there>
                               
<link rel="stylesheet" href="/css/pages/contact.css" /> <--- added by angular

问题: 在 contact.styl 中,我 无法访问 我的手写笔变量和功能(在 core.styl 中声明)

一个解决方案:在每个页面样式表中 @import '../core.styl'。但对我来说是不可能的。

我可以尝试其他解决方案吗?

也许是这样的 (server.js)?

function compile(str, path) {
 return stylus(str)
  .import(config.path_client + "/css/core")
  .set('filename', path)
  .set('warn', true)
  .set('compress', true);
}
app.use(stylus.middleware({
 src: config.path_client + '/css/pages',
 compile: compile
}));
(尝试了很长时间,但仍然对我不起作用)

编辑:我的文件结构:

|client
||css
|||pages
||||-contact.styl
||||-contact.css
|||base
||||-core.styl
||||-core.css
|server
||-server.js
|

您可以使用 JS API 并使用 define 方法定义这些变量。参见 http://learnboost.github.io/stylus/docs/js.html#definename-node