繁体   English   中英

AngularJS ng-controller无法正常工作

[英]AngularJS ng-controller not working

我刚刚开始从w3schools学习AngularJS。 我正在尝试练习他们在教程中提到过的示例。 一切正常,但是当我来到“AngularJS控制器”时,它在w3schools中运行良好并不能正常工作自己动手» 我把我的代码分成了这个小提琴的例子 我的脚本看起来像这样:

function personController($scope) {
    $scope.firstName= "John";
    $scope.lastName= "Doe";
}

尽量帮助我,并建议我一个很好的教程(或任何免费的PDF文件)。

这是你纠正的小提琴

对于角度来说,控制器定义必须如下所示是一个很好的做法:

angular.module("app", []).controller("personController", function($scope) {
    $scope.firstName = "John";
    $scope.lastName = "Doe";
});

毫无疑问,学习Angular 基础知识的最佳教程是CodeSchool

希望这可以帮助。

这是一种新方法。 我们不能再使用没有模块的控制器。 看看这个 只需添加一个模块并附加控制器即可,您将没有任何问题。

我只是修改了你的小提琴。 请查看小提琴示例

function personController($scope) {
    $scope.firstName= "John";
    $scope.lastName= "Doe";
}

有你的代码,除了从的onLoad没有包 JS小提琴设置没有问题-在头

在此输入图像描述

您需要创建一个应用程序模块,然后添加一个控制器。 在角度中,它是关于依赖性的。 其次,你需要一个应用程序名称。 基础教程在他们的主页上: https//docs.angularjs.org/tutorial/step_00我开始使用它,它对我很好。 只需从步骤1开始执行所有步骤。

这是“Angular Controller Not Working”的常见搜索结果,所以我认为添加修复我的“控制器不工作”问题的解决方案会很有帮助。

我有我的基本路线, $routeProvider指向控制器文件和templateUrl部分,如下所示:

$routeProvider.when('/', {
    templateUrl: 'partials/home.html',
    controller: 'homePage'
});

我有其他几条路线,所有这些控制器都工作,但由于某种原因,我的第一条路线不会。 事实证明,我的部分逻辑错误很小,这阻止了我的控制器代码运行。

愚蠢的小错误,但我措手不及,这部分是一个逻辑问题阻止任何控制器代码运行。 我花了很长时间才愿意承认,因为问题不在我的“JavaScript”中,即使存在控制台错误。 紧密耦合的前端代码的乐趣,amiright?

您必须输入函数作为模块内的参数

var app = angular.module('app',[]);
app.controller('personController',function($scope){
  $scope.firstName = 'John';
  $scope.lastName = 'Smith';
});

通过在html的任何标签中添加np-app="myApp" ,例如<html ng-app = "myApp">我的代码工作正常。

如果您尝试将ngApp嵌套到其他ngApp中,则可能存在相同的问题。

文件说:

AngularJS applications cannot be nested within each other.

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM