ПапаПарс с угловой JS

Понравился хороший анализатор CSV и разборщик PapaParse. Может ли кто-нибудь помочь мне получить этот комбайн с Angular JS.

Мне нравится, чтобы PapaParse работал в Angular Way. Пытаюсь найти решение.

4 ответа

Решение

Ты можешь использовать value предоставлять автономные сторонние библиотеки.

angular.module('your.app')
    .value('yourLib', yourLib);

Тогда в вашем контроллере или сервисе, вы бы принесли его обычным способом, используя DI

angular.module('your.app')
    .controller('YourController', YourController);

YourController.$inject = ['yourLib'];
function YourController(yourLib) {

   //. . .  
} 

Если сторонняя строка является функцией конструктора и требует ее обновления, вы можете захотеть создать фабрику или провайдера, у которого есть метод, который принимает передаваемые параметры, чтобы конструктор возвращал новый экземпляр.

редактировать

Посмотрев на PapaParse, вы захотите зарегистрировать его с помощью углового инжектора, используя value,

Я на самом деле не делал ничего необычного, чтобы загрузить это. Просто добавьте его в HTML-файл и в мою папку lib. В моем случае: /lib/papaparse.min.js

и index.html. Как обычно, скрипт:

<script src="lib/papaparse.min.js"></script>

тогда я просто использовал его в моем контроллере:

Papa.parse(data, {
    complete: function(results) {
        console.log("Finished:", results.data);
    }
});

Просто введите URL-адрес скрипта в ваш index.html и затем в вашем контроллере, доступ к нему как - var Papa = window.Papa;, Это оно! Вы готовы к дальнейшим действиям!

Просто используйте интерфейсный инструмент модульности, такой как requirejs загрузить papaParser в контексте и вызвать API в любом вашем контроллере или службе.

Другие вопросы по тегам