Как включить сторонний модуль (angular-pull-to-refresh), у которого нет определений типов - PullRequest
0 голосов
/ 24 января 2019

Я начинающий, и я понятия не имею, как включить библиотеки и модуль ввода, поэтому, пожалуйста, потерпите меня. Это модуль, который я хочу включить: https://github.com/mgcrea/angular-pull-to-refresh

Я установил модуль с беседкой и успешно связал их. и должно быть в app.component.html, верно? Или я должен связать его в компоненте с именем list (list.component.html), где я показываю данные, которые я хочу обновить с помощью раскрывающегося списка?

Не могли бы вы указать мне правильное направление, где поставить эту строку и что именно здесь обозначает «myApp».
- Вставьте модуль mgcrea.pullToRefresh в ваше приложение:
angular.module('myApp', ['mgcrea.pullToRefresh']);

А в примере, атрибут pull-to-refresh вызывается и внутри функции onReload (). Где должна быть расположена эта функция?

Спасибо всем за чтение и помощь!

Ответы [ 2 ]

0 голосов
/ 28 января 2019

Мне удалось получить рабочую тягу, чтобы обновить с помощью этого плагина: https://github.com/BoxFactura/pulltorefresh.js Вот как:
Установите плагин и @types для плагина с
npm install pulltorefreshjs --save npm install @types/pulltorefreshjs --save

А затем импортировать его в app.components.ts
import * as PullToRefresh from 'pulltorefreshjs';

И инициализировать его в app.components.ts:
ptrinit:any = PullToRefresh.init();

0 голосов
/ 24 января 2019

Согласно веб-сайту, вы можете сделать это следующим образом, в своем файле js:

'use strict';

angular.module('myApp', ['mgcrea.pullToRefresh']);

   angular.module('myApp')
   .controller('AppCtrl', function($scope, $q) {

   $scope.states = ['Alabama', 'Alaska', 'Arizona', 'Arkansas', 'California', 'Colorado', 'Connecticut', 'Delaware', 'Florida', 'Georgia', 'Hawaii', 'Idaho', 'Illinois', 'Indiana', 'Iowa', 'Kansas'];

   $scope.onReload = function() {
      console.warn('reload');
      var deferred = $q.defer();
      setTimeout(function() {
        deferred.resolve(true);
      }, 1000);
      return deferred.promise;
   };

});

В вашем файле index.html:

<body ontouchstart="" ng-controller="AppCtrl">

<div class="content">
    <ul class="list-group list-group-table" pull-to-refresh="onReload()">
        <li class="list-group-item" ng-repeat="state in states" ng-bind="state"></li>
    </ul>
</div>

Добавляя директиву ng-controller в тег body вашей страницы, вы сообщаете, какая часть вашей страницы будет обрабатываться каким контроллером. В этом случае контроллер AppCtrl . У вас может быть несколько контроллеров, отвечающих за различные разделы вашей страницы, например, div, body или один контроллер, отвечающий за всю страницу, например html-теги.

Надеюсь, это поможет!

...