AngularJS, UIB для Bootstrap 4, не может найти и загрузить шаблон

Я использую UIBootstrap, который поддерживает как AngularJS, так и Bootstrap 4. Реализация отличается от модуля к модулю, потому что мы используем избыточность на половине экрана. На одном конкретном экране шаблон не найден.

Я знаю, что на этот вопрос ответили, но не для этой версии, и другие решения не работают.

Ctrl:

  $scope.openDeleteConditionModal = () => {
    $uibModal.open({
      templateUrl: 'delete-condition-modal.html',
      scope: $scope,
      backdrop: 'static',
      controller: ($uibModalInstance) => {
        $scope.conditionModalClose = () => {
          $scope.modalToggle = () => {
            ctrl.toggleDeleteModal(false);
          };
          $uibModalInstance.close();
        };
      },
    });
  };

  // Open delete modal
  ctrl.deleteExistingCondition = (condition) => {
    ctrl.ConditionToBeDeleted = condition;
    ctrl.toggleDeleteModal(true);
  };

  $scope.$watch(() => ctrl.showDeleteModal, (newValue, oldValue) => {
    if (newValue !== oldValue) {
      if (newValue) {
        $scope.openDeleteConditionModal();
      } else {
        $scope.conditionModalClose();
      }
    }
  });

Моя файловая структура:

notifications
|--actions
|--angular
|--|--templates
|--|--|--delete-condition-modal.html
|--|--|--notifications.html

Я хочу получить доступ delete-condition-modal, на кнопку удаления, и когда я это делаю, я получаю это: angular.js:14525 Error: [$compile:tpload] Failed to load template: templates/delete-condition-modal.html (HTTP status: 404 Not Found)

1 ответ

Решение

Я предполагаю, что вы не используете ng-templates(готовые пакеты для сборки).

Вам нужно изменить путь к templateurl либо:

templateUrl: 'angular/templates/delete-condition-modal.html',

или же

templateUrl: 'notifications/angular/templates/delete-condition-modal.html',

Я также предполагаю, что при развертывании этого решения вы скопировали файлы в каталог сборки.

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