AngularJS 1.6.4 未显示 CSS

Posted

技术标签:

【中文标题】AngularJS 1.6.4 未显示 CSS【英文标题】:CSS not showing with AngularJS 1.6.4 【发布时间】:2017-12-27 20:48:36 【问题描述】:

我正在为移动应用开发开发 Cordova 和 Angular JS,但我遇到了 CSS 类没有按预期显示的问题。 1) style.css 文件中的 CSS 代码:

  .nav .active 
    border-top: 3px solid #11a7ab; 

2)JS控制器代码NavCtrl.js(我有2个标签HOME和ABOUT),这里我初始化home标签:

function NavCtrl($scope)

    $scope.menu = 'home';


3) html代码如下:

<!DOCTYPE html>
<html ng-app="app">
    <head>
        <meta charset="utf-8" />
        <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, target-densitydpi=device-dpi" />
        <link href='http://fonts.googleapis.com/css?family=Ubuntu:400,700' rel='stylesheet' type='text/css'>
        <link rel="stylesheet" type="text/css" href="css/style.css" />
        <title>Hello World</title>
    </head>
    <body>
        <header class="header">
            My app
        </header>

        <section ng-view class="view">
        </section>

        <nav class="nav" ng-controller="NavCtrl">
            <a href="#home" ng-click="menu = 'home'" ng-class="'active': menu=='home'"><i class="icon-home"></i></a>
            <a href="#about" ng-click="menu = 'about'" ng-class="'active': menu=='about'"><i class="icon-about"></i></a>
        </nav> 


        </script>
             <script src="js/jquery.js"></script>
             <script src="js/angular-1.6.4.js"></script>
             <script src="js/controller/NavCtrl.js"></script>
             <script src="js/app.js"></script>
        <script>
    </body>
</html>

请注意,当我使用 AngularJS v1.1.5 时,代码运行没有任何问题,但是当我使用 AngularJS v1.6.4 时,CSS“活动”没有出现。我是否遗漏了代码配置以使代码与 AngularJS v1.6.4 一起正常工作?

【问题讨论】:

您应该在 NavCtrl .js 之前加载您的 app.js 【参考方案1】:

您没有向我们展示您的 app.js,但您似乎没有将控制器注册到您的应用程序的当前模块中,如官方文档中所示: angular.module('controllerAsExample', []) .controller('SettingsController1', SettingsController1);

并用这个替换 $scope 并使用 ng-controller="YourController as vm" ... vm.yourVar

看看更面向组件架构的 1.6 最佳实践。我们不再依赖 $scope 而是依赖类封装来处理范围变量

【讨论】:

大家好,工作就像一个魅力。谢谢朱伦。您的指示对我帮助很大。我在 app.js 中创建了控制器,现在可以正常工作了。 如果对您有帮助,请选择它作为正确答案:)

以上是关于AngularJS 1.6.4 未显示 CSS的主要内容,如果未能解决你的问题,请参考以下文章

如果未使用 jQuery hide() 显示 AngularJS 表单项,是不是对其进行验证?

AngularJS bootstrap.ui 模态未显示

ngAnimate 在 AngularJS 1.6.4 中停止工作

会话用户名未显示在 angularjs ngView 模板内,但在 ngView 之外显示

数据进入时,Angularjs范围数组未显示

如何在 AngularJS 中为未定义的表达式值显示占位符?