【问题标题】:Angular ngRoute - not load the html correctlyAngular ngRoute - 未正确加载 html
【发布时间】:2015-12-01 12:15:10
【问题描述】:

我正在尝试使用ngRoute。 当我转到 url /#/page1 时,我在正确的位置收到了 page1。 但是我的链接有问题,而且 css 也不能正常工作。 另一方面,如果我转到page1.html 并添加mdlcssjs 就可以了。

这是我的应用程序

 var app = angular.module('app',['ngRoute'])
.config(['$routeProvider',
function ($routeProvider){
    $routeProvider
  .when('/page1',{
     templateUrl : 'pages/page1.html',
     controller : 'Page1Ctrl'
   }); 

}])
.controller('Page1Ctrl',['$scope',function($scope){
}]);

我的page1.html是从mdl布局的标签(mdl的css和所有js都在index.html中)

<div class="mdl-tabs mdl-js-tabs mdl-js-ripple-effect">
  <div class="mdl-tabs__tab-bar">
      <a href="#starks-panel" class="mdl-tabs__tab is-active">Starks</a>
      <a href="#lannisters-panel" class="mdl-tabs__tab">Lannisters</a>
      <a href="#targaryens-panel" class="mdl-tabs__tab">Targaryens</a>
  </div>

  <div class="mdl-tabs__panel is-active" id="starks-panel">
    <ul>
      <li>Eddard</li>
      <li>Catelyn</li>

    </ul>
  </div>
  <div class="mdl-tabs__panel" id="lannisters-panel">
    <ul>
      <li>Tywin</li>
      <li>Cersei</li>
      <li>Jamie</li>
    </ul>
  </div>
  <div class="mdl-tabs__panel" id="targaryens-panel">
    <ul>
      <li>Viserys</li>
    </ul>
  </div>
</div>

并在index.html 中添加&lt;ng-view &gt;&lt;/ng-view&gt;

我也尝试使用 jquery.load 来加载 page1.html 和同样的问题。

如果有人可以帮助我,我会感谢,

谢谢。

编辑: 它正在加载 css,但某些 css 字段已重载.. 所以看起来没有加载 css..

【问题讨论】:

  • 只是你不能从部分加载 js & css 引用..
  • 那么我怎样才能让我的网站像一个模板一样改变我不必在每个 html 中加载 js、css 的内部 div ..?
  • 您确定要在 page1.html 上使用的 CSS 和 JS 文件正在加载到 index.html 中吗?您是否在控制台中收到任何错误?
  • 控制台没有错误。如果我复制 page1.html 的代码并将其替换为 一切正常..
  • 但是如果我把css文件的链接复制到pager1.html就不行了

标签: jquery angularjs ngroute


【解决方案1】:

index.html 中列出您的所有资源(js,css)

index.html的body标签内创建

ng-view

现在我们所有的部分 html 将被加载到ng-view

注意:不要忘记在 index.html 中添加ng-app

更新:只需将您的路由器更改为

  $routeProvider
  .when('/page1',{
     templateUrl : 'pages/page1.html',
     controller : 'Page1Ctrl'
   })
  .when('/',{
     templateUrl : 'pages/page1.html',
     controller : 'Page1Ctrl'
 });

【讨论】:

  • 我做到了..这不是将css,js加载到page1.html...这是问题..我看到了页面,但似乎索引中的js文件。 html 不影响 page1.html
  • 您要加载的网址是什么,是否以 /choose 为后缀?
  • t's 加载 css,但某些 css 字段已重载.. 所以看起来没有加载 css..
【解决方案2】:

看看这个:https://github.com/door3/angular-css。它允许您为每个路由指定 css 文件。

【讨论】:

    猜你喜欢
    • 2014-11-25
    • 2019-06-14
    • 1970-01-01
    • 1970-01-01
    • 2015-02-23
    • 2019-03-01
    • 2020-08-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多