1

我刚刚开始使用 MEAN 堆栈(https://github.com/linnovate/mean),所以我很确定我的问题对于专家来说看起来非常基本,所以我提前道歉!

虽然我认为这将是对这个堆栈已经提供的一个很好的补充,但我无法设法集成Uglify.jsstylus

也有人问过这个问题,但对我来说,将Jade模板用于服务器和公共视图是有意义的,至少在标准化方面是这样。

我曾尝试使用 grunt 文件server.js并重命名一些文件,但到目前为止我设法实现的只是破坏了原始项目......

提前致谢!

编辑:刚刚发现这个项目的一个分支,它刚刚添加了对公开视图的玉模板的支持:https ://github.com/tutley/mean

4

1 回答 1

2

这篇文章解释了如何将 Stylus 预处理集成到 MEAN 堆栈:http ://to-s.tk/integrate-stylus-to-the-mean-stack/

精简版:

  • 移动public/css到新文件assets/stylesheets并将所有.css文件重命名为.styl

  • grunt-contrib-stylus通过npm's安装package.json,作为开发和运行时依赖项。

- 在你的 Gruntfile 中配置手写笔编译

// ...
grunt.initConfig({
    // ...
    watch: {
        // ...
        stylus: {
            files: ['assets/stylesheets/**/*.styl'],
            tasks: ['stylus']
        },
        // ...
    },
    // ...
    stylus: {
        compile: {
            options: {
                paths: ['assets/stylesheets/**']
            },
            files: [{
                dest: 'public/css/',
                cwd: 'assets/stylesheets/',
                src: '*.styl',
                ext: '.css',
                expand: true
            }]
        }
    },
    // ...
});
//...
//Load NPM tasks
// ...
grunt.loadNpmTasks('grunt-contrib-stylus');
// ...
  • common.styl在using@require语句中导入视图手写笔文件(或任何子手写笔)

  • 删除对视图或其他内容substylesheets的引用head.jade

然后所有assets/stylesheets/*.styl文件都应该自动编译成public/css/*.css,只要grunt是运行的。要触发编译而不依赖watch,可以运行grunt stylus

于 2014-01-30T04:59:04.233 回答