繁体   English   中英

在Gruntfile内或从Gruntfile加载和解析.ini文件

[英]Loading and parsing .ini file inside or from a Gruntfile

  • Gruntfile.js位于project root/Gruntfile.js
  • asset_compress.ini位于project root/app/Config/asset_compress.ini
  • 测试是使用Jasmine编写的,所有规范都位于project root/tests/**/*

以下是精简的Gruntfile。 如果您需要更多,请随时询问:

module.exports = function(grunt) {
    'use strict';

    grunt.initConfig({
        jasmine: {
            test: {
                src: [
                    'node_modules/jasmine-expect/dist/jasmine-matchers.js',
                    'app/webroot/js/libraries/jquery-2.0.js',
                    'app/webroot/js/api/ClassUtility.js',
                    'app/webroot/js/api/**/*.js'
                ],
                options: {
                    log: true,
                    specs: [
                        'tests/app/webroot/js/api/ClassUtility.spec.js',
                        'tests/**/*.spec.js'
                    ]
                }
            }
        }
    });
};

需要在API的任何其他部分之前加载ClassUtility (及其规范),因为它包含所有其他“类”依赖的内容。 这就是为什么在所有其他api类之上专门声明它的原因。

但是,我有许多依赖(!)的依赖关系和许多其他文件,它们都存在于(相当大的) asset_compress.ini 理想情况下,我希望将单个ini文件保留为唯一列表,并从该列表中读取我的Gruntfile,以了解应加载哪些源文件。

TLDR:我如何用ini文件的内容配置Gruntfile?

正如bfred.it所建议的那样,有很多可以解析.ini文件的节点程序包。 但是,他们都不像我希望他们那样工作,所以我决定创建自己的公司。

您可以在这里找到源代码,文档,说明以及您可能需要的其他任何内容: https : //bitbucket.org/skelware/node-file-parser/

随时要求其问题跟踪器提供功能!

在节点中加载和解析ini文件的简单方法:首先在命令行上安装:

npm install parse-ini

然后在代码中:

var iniParser = require('parse-ini');
var parsedIni = iniParser.parse('yourfile.ini');
// job done, you can use results in parsedIni:
console.log(parsedIni.sectionName.variableName);
console.log(parsedIni.variableWithoutSectionName);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM