在 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'
]
}
}
}
});
};
ClassUtility
(及其规范)需要在 API 的任何其他部分之前加载,因为它包含所有其他 "classes" 依赖的所有内容。这就是为什么它被明确声明高于所有其他 api 类.
但是,我有很多(!)依赖项和我需要的许多其他文件,它们都存在于(相当大的)asset_compress.ini
中。理想情况下,我希望将该单个 ini 文件保留为唯一列表,并从该列表中读取我的 Gruntfile 以了解它应该加载哪些源文件。
TLDR:
如何使用 ini 文件的内容配置 Gruntfile?
正如 bfred.it 所建议的,有很多节点包可以解析 .ini 文件。但是,none 其中的工作方式符合我希望的方式,因此我决定创建自己的方式。
源代码、文档、说明和您可能需要的任何其他内容都可以在这里找到: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);
- 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'
]
}
}
}
});
};
ClassUtility
(及其规范)需要在 API 的任何其他部分之前加载,因为它包含所有其他 "classes" 依赖的所有内容。这就是为什么它被明确声明高于所有其他 api 类.
但是,我有很多(!)依赖项和我需要的许多其他文件,它们都存在于(相当大的)asset_compress.ini
中。理想情况下,我希望将该单个 ini 文件保留为唯一列表,并从该列表中读取我的 Gruntfile 以了解它应该加载哪些源文件。
TLDR: 如何使用 ini 文件的内容配置 Gruntfile?
正如 bfred.it 所建议的,有很多节点包可以解析 .ini 文件。但是,none 其中的工作方式符合我希望的方式,因此我决定创建自己的方式。
源代码、文档、说明和您可能需要的任何其他内容都可以在这里找到: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);