Using Angular 5 and I would like to load a CSV file into the async pipe, how do I convert this to a promise?
d3.csv(this.csvFile, function(data) {
      console.log(data);
});
Using Angular 5 and I would like to load a CSV file into the async pipe, how do I convert this to a promise?
d3.csv(this.csvFile, function(data) {
      console.log(data);
});
 
    
    Starting with d3 version 5, promises are built in.
d3.csv("file.csv").then(function(data) {
  console.log(data);
});
If you use async/await you can do this:
const data = await d3.csv("file.csv");
console.log(data);
 
    
    With enough googling I worked it out...
loadCSV(file: string) {
    return new Promise(function (resolve, reject){
        d3.csv(file, function(error, request) {
            if(error) {
               reject(error);
            } else {
               resolve(request);
            }
         });
     });
 }
