首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >将csv解析为json,然后使用Gulp将数据注入javascript文件。

将csv解析为json,然后使用Gulp将数据注入javascript文件。
EN

Stack Overflow用户
提问于 2015-11-19 16:33:10
回答 1查看 967关注 0票数 0

我有CSV数据,需要转换成JSON,然后注入到脚本中。我有一个部分工作的解决方案,但它将[object, object]而不是实际的json数据注入到我的最终脚本中。

响应应该是一个对象数组(当我将数据记录到控制台时似乎是这样)。如果我对数据进行typeof测试,它将返回object

更新:

gulp-replace必须将一个字符串替换为另一个字符串,这将解释为什么我要获得[Object object]。我需要找到另一种注入JSON的方法。

我尝试使用gulp-preprocess,但在输出文件夹中使用[Object object]获得了相同的结果。

Gulpfile

代码语言:javascript
代码运行次数:0
运行
复制
var gulp = require('gulp');
var replace = require('gulp-replace');
var Converter = require("csvtojson").Converter;
var converter = new Converter({});

// Read data.csv, parse to JSON
gulp.task('replace', function() {
  require("fs").createReadStream("./data.csv").pipe(converter);
  converter.on("end_parsed", injectJSON);
});

// Inject JSON into script.js
function injectJSON(json) {
  return gulp.src('src/script.js')
    .pipe(replace('[\'json\']', json))
    .pipe(gulp.dest('js'));
}

gulp.task('default', ['replace']);

脚本

代码语言:javascript
代码运行次数:0
运行
复制
(function () {
  var permits = ['json']; // <- replace this with JSON data
})();

输出

代码语言:javascript
代码运行次数:0
运行
复制
(function () {
  var permits = [object Object],[object Object],[object Object],[object Object]...
})();
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-19 17:34:34

尝试stringify你注射的东西:

代码语言:javascript
代码运行次数:0
运行
复制
function injectJSON(json) {
  return gulp.src('src/script.js')
    .pipe(replace("['json']", JSON.stringify(json)))
    .pipe(gulp.dest('js'));
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33809438

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档