У меня есть приложение, использующее PDF-просмотрщик-pdf angularjs, этот просмотрщик использует html-шаблон с собственным контроллером angularjs, этот зритель хочет использовать его в разных каталогах (то есть это глобальный), я хорошо работаю, когда Я открываю один каталог и позицию PDF, но когда вы открываете другой , я разблокировал другую, загрузив pdf в предыдущем окне и не открыв, то есть данные перезаписывают меня Есть ли способ разрешить это, откройте тот же просмотрщик в нескольких каталогах не затрагивая других?Можете ли вы использовать один и тот же обзор и угловой контроллер без перезаписи данных?
0
A
ответ
0
Если вы сделаете программу просмотра PDF директивой, вы должны быть в состоянии достичь этого, потому что директивы работают в пределах их собственного масштаба.
0
Вот почему я создал услугу, как показано ниже:
angular.module('myModule',['pdf']).service('pdfService', function() {
var pdfURL = "";
var defineURL = function (url) {
pdfURL = url;
};
var getURL = function() {
return pdfURL;
};
return {
defineURL: defineURL,
getURL: getURL
};
}).controller('DocControlador', ['$scope', 'pdfService', function ($scope, pdfService) {
$scope.pdfName = '';
$scope.pdfUrl = pdfService.getURL();
$scope.scroll = 0;
$scope.loading = 'cargando...';
$scope.getNavStyle = function (scroll) {
if (scroll > 100) return 'pdf-controls fixed';
else return 'pdf-controls';
}
$scope.onError = function (error) {
console.log(error);
}
$scope.onLoad = function() {
$scope.loading = '';
}
$scope.onProgress = function (progress) {
console.log(progress);
}
}])
и здесь я перехожу я присваивать значения переменным обслуживание от другого контроллера:
pdfService.defineURL("\\Files\\1\\Charts\\" + $scope.fileName);
Я использую директиву, которая находится в этот url https://github.com/sayanee/angularjs-pdf, может быть , как описано выше?. –
О, хорошо. Таким образом, это похоже на № 6 «Начало работы», вы устанавливаете переменную области видимости, называемую pdfUrl. Как вы изменяете эту переменную при открытии нового экземпляра программы просмотра PDF? – gradorade
Я приложил код ответа. –