【问题标题】:AngularJS controller does not workAngularJS 控制器不起作用
【发布时间】:2017-06-14 11:22:36
【问题描述】:

我刚开始学习 mvc,并认为 Angular 是一个很好的起点。一开始我只想看看我是否可以将我的控制器设置为工作。但我有问题。 为了缩短我的第一篇文章,这里是代码: index.php

<!DOCTYPE html>
<html>

<head>
    <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.5/angular.min.js">
    </script>
    <title>afa</title>
    <link rel="stylesheet" type="text/css" href="stil-index.css">
</head>

<body ng-app="myapp">

    <div class="flex-container" ng-controller="mainController">
        <header>
            <h1>{{pages.name}} </h1>
        </header>

        <article class="article">
            <h1><?php echo "afgaga?" ?></h1>
            <p>
                <?php echo "agasdga" ?>
            </p>
            <p><strong><?php echo "agsadga" ?></strong>
            </p>
        </article>

        <footer>
            <?php $time=d ate(
            'l/d/m/y H:i:s');; echo $time;?> &nbsp &nbsp
            <?php echo "©";?>&nbsp &nbsp
            <?php echo
            "agadg"?>
        </footer>
    </div>
    <script src="js/app.js"></script>
</body>

</html>

app.js

var app = angular.module('myapp', []);
app.controller('mainController', ['$scope',
    function($scope) {
        $scope.pages = {
            name: 'glavna',
            key: 1
        };
    }
]);

我已经尝试了很长时间,做了很多变化但没有成功:/这里有什么问题?提前致谢。

【问题讨论】:

  • 详细说明问题所在?
  • 您正在使用 appname 而您正在应用程序上初始化您的模块
  • 在你的“app.js”的第二行你写了appname.controller...它应该是app.controller...
  • 我编辑了它,这是一个发布错误。问题是我没有将 pages.name 中的文本获取到我的 html 中。只有这个 {{pages.name}}
  • 尝试在 head 中为您的 app.js 初始化脚本标签,并检查您的脚本标签的基本 url 是否正确

标签: javascript angularjs model-view-controller


【解决方案1】:

关注Hello World! example

我猜正确的代码是

var app = angular.module('myapp', []);
app.controller('mainController', ['$scope',
  function($scope) {
  $scope.pages = { 
    name: 'glavna' ,
    key: 1
  };
}]);

您将模块初始化为“应用程序”,因此您必须稍后使用此名称。不是“应用名称”。

【讨论】:

  • 是的,我刚刚编辑了它,我尝试了很多东西,所以它保持不变,但它仍然不起作用。我原来确实是按照你刚才写的方式写代码的。
【解决方案2】:

更改以下代码

var app = angular.module('myapp', []);
appname.controller('mainController', ['$scope',
function($scope) {
$scope.pages = { 
name: 'glavna' ,
key: 1
};
}]);

与

var app = angular.module('myapp', []);
app.controller('mainController', ['$scope',
function($scope) {
$scope.pages = { 
name: 'glavna' ,
key: 1
};
}]);

这可能对你有帮助

【讨论】:

    【解决方案3】:

    尝试加入这一行:

    <script src="js/app.js"></script>
    

    head 标签内

    【讨论】:

    • 我试了一下,还是一样。
    • @Čendi 在 app.js 中放置警报或控制台并检查其是否执行
    【解决方案4】:

    确实有效...

    var app = angular.module('myapp', []);
    app.controller('mainController', ['$scope',
      function($scope) {
        $scope.pages = {
          name: 'glavna',
          key: 1
        };
      }
    ]);
    <!DOCTYPE html>
    <html>
    <head>
      <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.5/angular.min.js">
      </script>
      <title>afa</title>
      <link rel="stylesheet" type="text/css" href="stil-index.css">
    </head>
    
    <body ng-app="myapp">
      <div class="flex-container" ng-controller="mainController">
        <header>
          <h1>{{pages.name}} </h1>
        </header>
    
        <article class="article">
          <h1>
            <?php echo "afgaga?" ?>
          </h1>
          <p>
            <?php echo "agasdga" ?>
          </p>
          <p><strong><?php echo "agsadga" ?></strong>
          </p>
        </article>
    
        <footer>
          <?php $time=d ate(
                'l/d/m/y H:i:s');; echo $time;?> &nbsp &nbsp
          <?php echo "©";?>&nbsp &nbsp
          <?php echo
                "agadg"?>
        </footer>
      </div>
      <script src="js/app.js"></script>
    </body>
    
    </html>

    【讨论】:

    • 它不会在我的本地服务器上运行。好吧,至少我知道我的代码没有做错。
    • 不,它只是一直在说“{{pages.name”}}。我想我什么都试过了。我现在将尝试创建另一个基本的 html 页面并尝试在其上再次运行。
    • 感谢您试用并告诉我。
    • no prob:),进一步我建议删除您的 php 代码并在同一个 sn-p 中重试。
    • 这是一个旧文件,我刚刚复制并用于此目的。现在我将创建另一个 html 独家 :)
    【解决方案5】:

    替换

    //ajax.googleapis.com/ajax/libs/angularjs/1.3.5/angular.min.js
    

    与

    https://ajax.googleapis.com/ajax/libs/angularjs/1.3.5/angular.min.js
    

    【讨论】:

    • 做了,但没有任何变化。
    猜你喜欢
    • 1970-01-01
    • 2016-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-13
    • 1970-01-01
    • 1970-01-01
    • 2016-09-29
    相关资源
    最近更新 更多