我有一个角码:
myApp.controller('en', [ '$scope', 'PDFViewerService', function($scope, pdf, $ionicLoading) {
console.log('en: new instance');
$scope.pdfURL = "http://www.tafseer.info/phocadownload/copy_of_the_book/khatima.pdf";//fe.toURL();
$scope.instance = pdf.Instance("viewer");
$scope.nextPage = function() {
$scope.instance.nextPage();
};
$scope.prevPage = function() {
$scope.instance.prevPage();
};
$scope.gotoPage = function(page) {
$scope.instance.gotoPage(page);
};
$scope.pageLoaded = function(curPage, totalPages) {
$scope.currentPage = curPage;
$scope.totalPages = totalPages;
};
$scope.loadProgress = function(loaded, total, state) {
console.log('loaded =', loaded, 'total =', total, 'state =', state);
};
}]);在我的模板里:
<button ng-click="prevPage()"><</button>
<button ng-click="nextPage()">></button>
<br>
<span>{{currentPage}}/{{totalPages}}</span>
<br>
<pdfviewer src="{{pdfURL}}" on-page-load='pageLoaded(page,total)' id="viewer"></pdfviewer> 我正在尝试用AngularJS将一个PDF文件插入到我的网站中,但是我一直收到同样的错误:
Error: $interpolate:interr Interpolation Error为什么我要得到这个错误,以及如何消除它?我只想插入PDF..。
发布于 2015-10-18 07:41:19
下面将依赖项注入控制器的代码是不正确的。
myApp.controller('en', [ '$scope', 'PDFViewerService', function($scope, pdf, $ionicLoading) {数组中依赖项的列表应该与函数参数完全相等,更正如下:
myApp.controller('en', [ '$scope', 'PDFViewerService', 'pdf', '$ionicLoading', function($scope, 'PDFViewerService', pdf, $ionicLoading) {发布于 2015-10-18 08:09:56
主要的问题是您在哪里获得PDF,它应该在相同的原点(域)中正确工作,而不是在远程位置,您可以尝试附加的$sce.trustAsResourceUrl,但我认为这是不够的:
app.controller('dummy', ['$scope', 'PDFViewerService', '$sce', function ($scope, pdf, $sce) {
$scope.pdfURL = $sce.trustAsResourceUrl("http://www.tafseer.info/phocadownload/copy_of_the_book/khatima.pdf"); //fe.toURL();
...我的建议是在本地目录中下载PDF并从其中用pdfviewer打开它。
https://stackoverflow.com/questions/33195453
复制相似问题