Javascript 无法连续加载包含ng和$templateCache的相同url

Javascript 无法连续加载包含ng和$templateCache的相同url,javascript,angularjs,jsp,angularjs-directive,angularjs-ng-include,Javascript,Angularjs,Jsp,Angularjs Directive,Angularjs Ng Include,主要jsp: 但是当我将随机数附加到url时,它会起作用。我不想附加随机数。为什么它不能与$templateCache一起使用。删除(url)可能是因为模板是用另一个键存储的,而不是url。尝试控制台log$templateCache.ret(url)。它是否输出您的模板?似乎您正在控制器中注入$templateCache。有错误吗? <div> <jsp:include page='/jsp/pnPanel.jsp'/>

主要jsp:


但是当我将随机数附加到url时,它会起作用。我不想附加随机数。为什么它不能与$templateCache一起使用。删除(url)

可能是因为模板是用另一个键存储的,而不是
url
。尝试控制台log
$templateCache.ret(url)
。它是否输出您的模板?似乎您正在控制器中注入
$templateCache
。有错误吗?
 <div>
    <jsp:include page='/jsp/pnPanel.jsp'/>                       
 </div> 
<div id="pnApp" ng-controller="pnController">    
    <div>
        <a  href="#" ng-click="loadPopup('cc');">
            <font size="2" color="#cc6600">
            <b>CC:</b>
            </font>
        </a>
    </div>
    <ng-include src="popupurl"></ng-include>
</div>
<script>
    angular.element(document.getElementById("pnApp")).ready(function() {
            angular.bootstrap(document.getElementById("pnApp"), ["pnApp"]);
        });

    var pnApp= angular.module('pnApp', []);

    pnApp.config(function($controllerProvider, $provide, $compileProvider, $filterProvider, $httpProvider) {

        // to keep the older references.
        pnApp._controller = pnApp.controller;
        pnApp._service = pnApp.service;
        pnApp._factory = pnApp.factory;
        pnApp._value = pnApp.value;
        pnApp._directive = pnApp.directive;

        // Lazy loading for controller.
        pnApp.controller = function(name, constructor) {

            $controllerProvider.register(name, constructor);
            return(this);

        };

        // Lazy loading for service.
        pnApp.service = function(name, constructor) {

            $provide.service(name, constructor);
            return(this);

        };

        // Lazy loading for factory.
        pnApp.factory = function(name, factory) {

            $provide.factory(name, factory);
            return(this);

        };

        // Lazy loading for value.
        pnApp.value = function(name, value) {

            $provide.value(name, value);
            return(this);

        };

        // Lazy loading for directive.
        pnApp.directive = function(name, factory) {

            $compileProvider.directive(name, factory);
            return(this);

        };

        // Lazy loading for filter
        pnApp.filter = function(name, filter) {

            $filterProvider.register(name, filter);
            return(this);

        };

        //initialize get if not there
        if (!$httpProvider.defaults.headers.get) {
            $httpProvider.defaults.headers.get = {};
        }

        //disable IE ajax request caching
        $httpProvider.defaults.headers.get['If-Modified-Since'] = '0';

    });

    pnApp.controller('pnController', function($scope) {
        $scope.loadPopup = function(pnSectionName) {
                $scope.popupurl = "";                      
                url = getUrl(pnSectionName);
                $scope.popupurl = url;
            };

    };
</script>
pnApp.controller('pnController', function($scope,$templateCache) {
        $scope.loadPopup = function(pnSectionName){                 
                url = getUrl(pnSectionName);
        $templateCache.remove(url);
        $scope.popupurl = "";
                $scope.popupurl = url;
            };

    };