如何在我的节点项目(本地)中包含较less的引导版本?

我正在尝试学习一些关于节点的知识。 我已经成功地build立了一个节点的静态web服务器,我想要引导去。 我只想用我的节点项目。

我想我应该这样做,但不知道有没有更好的办法?

1)下载所有.less引导文件并将其安装到我的/ css文件夹中2)使用grunt编译我所有的.css文件,然后链接到css文件。

我有两个问题

1)这个过程会工作吗? 2)有没有更好的工作方式,如果这不起作用?

我会用Grunt来做这个,而且我认为它会工作得很好。 我还没有遇到更自动化的运行任务的方式,并使用Grunt在几个存储库(即https://github.com/dreamyguy )。 人们也可以使用Gulp ,但Grunt在写作的时候更加成熟。

你将不得不安装Grunt ,安装grunt-contrib-less和grunt-contrib-watch来观察你的文件。 你的Gruntfile.js看起来像这样:

 module.exports = function(grunt) { // Main project configuration grunt.initConfig({ // Read NPM package information pkg: grunt.file.readJSON("package.json"), // Compile CSS files from LESS less: { dev: { options: { paths: ["src/css"] }, files: { // destination // source "src/css/result1.css": "app/less/source1.less", "src/css/result2.css": "app/less/source2.less", "src/css/result3.css": "app/less/source3.less" } }, dist: { options: { paths: ["src/css"], cleancss: true, modifyVars: { imgPath: "'http://mycdn.com/path/to/images'", bgColor: "red" } }, files: { "src/css/result1.css": "app/less/source1.less", "src/css/result2.css": "app/less/source2.less" } } } // Watcher watch: { css: { files: "app/less/**/*.less", tasks: ["less:dev"] } } }); // Load the grunt tasks grunt.loadNpmTasks("grunt-contrib-less"); grunt.loadNpmTasks("grunt-contrib-watch"); // Compile production files grunt.registerTask("dist", [ "less:dist" ]); // Compile developer friendly environment grunt.registerTask("dev", [ "less:dev" ]); // Default task(s). grunt.registerTask("default", "dist"); }; 

你当然必须修改上述以反映你的path。

你可以在任何地方使用通配符,就像我在app/less/**/*.less 。 此示例将扫描文件夹/less/下所有带有.less扩展名的文件及其所有子文件夹。 只要注意,如果将通配符包含在lesssass这样的任务中,则文件将按字母顺序编译,而您仍然需要定义目标文件,如下所示:

 // Compile CSS files from LESS less: { dev: { options: { paths: ["src/css"] }, files: { // several sources can be compiled into one destination, if one creates an array with the sources "src/css/result1.css": [ "app/less/lib/**/*.less", "app/less/source1.less", "app/less/source3.less", "app/less/source7.less" ], // all files under 'bootstrap' folder and subfolders are compiled into one file "src/css/bootstrap.css": "app/less/bootstrap/**/*.less" } }, dist: { options: { paths: ["src/css"], cleancss: true, modifyVars: { imgPath: "'http://mycdn.com/path/to/images'", bgColor: "red" } }, files: { "src/css/result1.css": "app/less/source1.less", "src/css/result2.css": "app/less/source2.less" } } } 

在此任务中使用通配符时要小心,因为CSS的级联效应可能会产生不需要的覆盖。