我正在尝试将CSV文件存储在Cloud Firestore内的文本字段中。但是,Firestore会删除所有换行符,并将整个CSV文件存储为一行。 Firestore Data Types documentation并没有说其他关于可以存储的字符类型的限制,只是应该使用UTF-8:
最多1,048,487字节(1 MiB-89字节)。查询只考虑UTF-8表示形式的前1,500个字节。
更新
代码大致如下:
/**** Read CSV file ****/
let csvFileText;
const reader = new FileReader();
reader.onload = () => {
this.setCsvFileText(reader.result);
};
reader.readAsText(file);
//------ Wait for user to hit submit button ------
/**** Create order in Firestore ****/
const order = {
csvFileText: csvFileText,
firstName: 'John',
lastName: 'Doe',
email: 'jdoe@gmail.com'
}
return this.db
.collection('orders')
.add(order)
.then(docRef => docRef.id);
在致电Firestore之前,我可以看到order.csvFileText
是一个不错的CSV文件,带有换行符(在Chrome调试器中)。当我查看存储在Firestore中(在Firebase控制台中)的值时,换行符丢失了。
答案 0 :(得分:2)
所有进出数据库的数据均保持原样。您所看到的是Firebase控制台显示了简化的数据视图而没有回车的事实。如果这对您的用例不利,请file a feature request。