Express @导入目录语句

Express @导入目录语句,express,gruntjs,less,webstorm,Express,Gruntjs,Less,Webstorm,我现在的组织如下: styles/pages/page1/index.less styles/pages/page1/tab1.less ... styles/widgets/widget1.less styles/widgets/widget2.less ... styles/tools/partials.less ... styles/app.less my app.less文件的全部是@import语句,用于将所有其他部分引入 @import "tools/partials"; @imp

我现在的组织如下:

styles/pages/page1/index.less
styles/pages/page1/tab1.less
...
styles/widgets/widget1.less
styles/widgets/widget2.less
...
styles/tools/partials.less
...
styles/app.less
my app.less文件的全部是
@import
语句,用于将所有其他部分引入

@import "tools/partials";
@import "widgets/widget1";
@import "widgets/widget2";
@import "pages/page1/index";
@import "pages/page1/tab1";
//...
这些语句是手动维护的,这很糟糕。有更好的办法吗

我梦想着这样的事情:

@import "tools/partials";
@import "widgets/*";
@import "pages/**/*";
也许是某种在编辑器级别处理此问题的脚本(使用WebStorm)?或者可能是针对较少编译器本身的某种插件

现在,我的应用程序中的express中间件提供的文件越来越少,但如果有解决方案,我可以轻松地切换到grunt。

看一看。它根据您的文件维护一个导入文件(在您的情况下是
app.less

下面是我在最近的项目中如何使用它。我有一堆更少的文件,如下所示:

我使用
grunt-less导入
类似的方法(gruntfile.js):

现在,我的导入文件如下所示:

@import "tools/partials";
@import "widgets/*";
@import "pages/**/*";


要先导入
弹出窗口
样式吗?只需将其移动到
src
部分的顶部即可。你明白了-你可以使用grunt globbing模式明确地说出你想要的文件夹和顺序。

我知道我可以这样做。问题是,如何维护进口订单?例如,Tools.less必须在page1.less之前导入?此处是
grunt-less imports
的作者。谢谢你的提醒。如果缺少某些内容,请在Github上的问题中告诉我。@marcdiehelm我的dest文件在成功运行后为空(完成,无错误)。这是在我的文件部分:“core/less/theme.less”:['core/less/theme/***.less']当然,文件夹中有.less文件。你能想出点什么吗?@YoniLevy嗨,你能在Github上为此打开一个问题吗?在评论部分帮助您是不现实的。然而,我已经看到,您的全局模式递归地包含输出。
less_imports: {
        options: {
            banner: '// Compiled stylesheet'
        },
        styles: {
            src: [
                '<%= config.app %>/assets/less/page-frame-blocks/*.less',
                '<%= config.app %>/assets/less/popups/*.less',
                '<%= config.app %>/assets/less/*.less',
                '!<%= config.app %>/assets/less/styles.less'],
            dest: '<%= config.app %>/assets/less/styles.less'
        }
    },