Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 带有参数的htm5mode不';我不工作_Angularjs_Angularjs Routing_Location Provider - Fatal编程技术网

Angularjs 带有参数的htm5mode不';我不工作

Angularjs 带有参数的htm5mode不';我不工作,angularjs,angularjs-routing,location-provider,Angularjs,Angularjs Routing,Location Provider,首先,这是我的代码: 配置应用程序: promoApp.config(['$routeProvider','$locationProvider',function($routeProvider,$locationProvider){ $locationProvider.html5Mode(true); $routeProvider. when('/home',{ templateUrl: 'views/home.html',

首先,这是我的代码:

配置应用程序:

promoApp.config(['$routeProvider','$locationProvider',function($routeProvider,$locationProvider){
        $locationProvider.html5Mode(true);
        $routeProvider.
        when('/home',{
            templateUrl: 'views/home.html',
            controller: 'HomeController'
        }).
        when('/web',{
            templateUrl: 'views/web.html',
            controller: 'WebController'
        }).
        when('/portfolio',{
            templateUrl: 'views/portfolio.html'
        }).
        when('/game',{
            templateUrl: 'views/game.html'
        }).
        when('/contact',{
            templateUrl: 'views/contact.html',
            controller: 'ContactController'
        }).
        when('/admin',{
            templateUrl: 'views/admin.html',
            controller: 'AdminController'
        }).
        when('/blog_admin',{
            templateUrl: 'views/blog_admin.html',
            controller: 'BlogAdminController'
        }).
        when('/blog_edit', {
            templateUrl: 'views/blog_edit.html',
            controller: 'BlogEditController'
        }).
        when('/blog_edit/:blogId', {
            templateUrl: 'views/blog_edit_post.html',
            controller: 'BlogEditPostController'
        }).
        when('/blog',{
            templateUrl: 'views/blog.html',
            controller: 'BlogController'
        }).
        when('/blog/:blogId',{
            templateUrl: 'views/blog_post.html',
            controller: 'BlogPostController'
        }).
        otherwise({
            redirectTo: '/home'
        });
    }]);
我的控制器BlogPostController:

blog.controller('BlogPostController',['$scope','$http','$upload','$routeParams','$sce',function($scope,$http,$upload,$routeParams,$sce){
        $scope.blogId = $routeParams.blogId;
        $scope.$upload = $upload.upload({
            method: 'POST',
            url: 'edit.php',
            data: {'title': $scope.blogId}
        }).success(function(data){
            if(data.error){
                $scope.resultMessage = data.message;
                $scope.result = 'bg-danger';
            }else{
                $scope.post = data;
                $scope.pastToPlainText = $sce.trustAsHtml;
            }
        });

        $http.get('backend/muestra.php').success(function(data){
            if(data.error){
                $scope.resultMessage = data.message;
                $scope.result = 'bg-danger';
            }else{
                $scope.entradas = data;
            }
        }).error(function(){
            $scope.resultMessage = "Se ha producido un error al consultar con la base de datos";
        });
    }]);
我的博客.html

<div class="container">
    <div class="row">
        <div class="col-lg-3 position-panel-blog hidden-md hidden-sm hidden-xs">
            <div class="panel panel-primary margin-index">
                <div class="panel-heading">
                    <h3 class="panel-title">Entradas recientes</h3>
                </div>
                <div class="panel-body">
                    <div ng-repeat="entrada in entradas | limitTo: 5">
                        {{$index + 1}}. <a ng-href="/blog/{{entrada.title}}" class="link-blog">{{entrada.title}}</a>
                    </div>
                </div>
            </div>
            <div class="panel panel-primary">
                <div class="panel-heading">
                    <h3 class="panel-title">Nuestros servicios web</h3>
                </div>
                <div class="panel-body">
                    <img src="images/que-ofrecemos/portada_web.jpg" alt="Nuestros servicios web" class="image-anuncio">
                    <div class="acceder">
                        <a href="#/web" class="btn btn-primary">Accede ahora</a>
                    </div>
                </div>
            </div>
        </div>
        <div class="blog-position col-lg-8" ng-repeat="entrada in entradas">
            <div class="thumbnail">
                <div class="margin-content-blog">
                    <a ng-href="/blog/{{entrada.title}}" class="link-blog"><h1 class="format-title-blog">{{entrada.title}}</h1></a>
                    <div ng-bind-html="pastToPlainText(entrada.text)" class="text-blog"></div>
                    <slick infinite="false" dots="true" slides-to-show="3" slides-to-scroll="1">
                        <div ng-repeat="image in entrada.images track by $index">
                            <img src="{{image}}" alt="Imagen de la entrada {{entrada.title}}" class="image-post img-responsive">
                        </div>
                    </slick>
                    <div class="row">
                        <div class="col-lg-4">
                            <!-- Inserta esta etiqueta en la sección "head" o justo antes de la etiqueta "body" de cierre. -->
                            <script src="https://apis.google.com/js/platform.js" async defer>
                                {lang: 'es'}
                            </script>
                            <!-- Inserta esta etiqueta donde quieras que aparezca Botón Compartir. -->
                            <div class="g-plus" data-action="share"></div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>

累犯
{{$index+1}}。
纽斯特罗斯服务网
{lang:'es'}
单击转到文章时,模板blog_post.html将根据$route.current.templateUrl加载,但浏览器显示的内容与blog.html相同,并且不显示blog_post.html模板的内容。如果没有HTML5模式,这将正常工作,不会出现问题。可能HTML5模式不适合参数链接(/blog\u edit/:blogId)。下面我用图片更好地解释了这一点

使用HTML5模式启用:

  • 我在博客菜单中,我要点击一篇帖子:(模板是blog.html)

  • 单击“发布”时,当前路由器会将模板更改为blog_post.html,但浏览器会显示相同的模板blog.html:

  • 使用HTML5模式禁用:

  • 当我在blog.html模板中时,我将单击帖子:

  • 当我已经点击了帖子。现在它正确地显示了blog_post.html模板:


  • 要支持以HTML5模式创建的URL的直接链接,您需要在服务器上重写URL。例如,如果您正在使用Apache,请通过
    mod_rewrite

    发件人:

    服务器端

    使用这种[HTML5]模式需要在服务器端重写URL,基本上,您必须重写指向应用程序入口点的所有链接(例如index.html)


    如果您已经这样做了,请同时提供相关的服务器配置。

    Hello@divideandconquer.se。这是我的.htaccess文件。在服务器配置中有什么我必须做的吗?@Dominuskernel很抱歉没有响应。.htaccess看起来是正确的。但是也许你应该试着去掉预渲染的东西,让它在没有预渲染的情况下工作?