[英]Loading and parsing .ini file inside or from a Gruntfile
project root/Gruntfile.js
project root/app/Config/asset_compress.ini
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.