Angularjs Can';我不能让这个简单的工作

Angularjs Can';我不能让这个简单的工作,angularjs,Angularjs,我正在通过YouTube上的教程学习AngularJS,我在14日的视频中遇到了一个关于ng提交指令的障碍 请参阅下面的代码snipit,当您填写底部的表单并单击submit时,应该会添加一个新的忍者,但它不起作用。控制台中没有显示错误。我在addNinja()函数定义中放置了一个debugger断点,当我单击submit时它不会进入该断点 知道我做错了什么吗 var myNinjaApp=angular.module('myNinjaApp',[]); myNinjaApp.controll

我正在通过YouTube上的教程学习AngularJS,我在14日的视频中遇到了一个关于ng提交指令的障碍

请参阅下面的代码snipit,当您填写底部的表单并单击submit时,应该会添加一个新的忍者,但它不起作用。控制台中没有显示错误。我在
addNinja()
函数定义中放置了一个
debugger
断点,当我单击submit时它不会进入该断点

知道我做错了什么吗

var myNinjaApp=angular.module('myNinjaApp',[]);
myNinjaApp.controller('NinjaController',['$scope',函数($scope){
$scope.removenja=函数(忍者){
var removeNinja=$scope.ninjas.indexOf(忍者);
$scope.ninjas.splice(removeNinja,1);
};
$scope.addNinja=function(){
$scope.ninjas.push({
名称:$scope.newninja.name,
腰带:$scope.newninja.belt,
速率:parseInt($scope.newninja.rate),
可用:真
});
};
//$scope.addNinja=function(){
//$scope.ninjas.push(this.newninja);
//$scope.newninja='';
//    };
$scope.ninjas=[
{
姓名:“Yoshi”,
腰带:“绿色”,
比率:50,
可用:真
},
{
名称:“水晶”,
腰带:“黄色”,
费率:30,
可用:真
},
{
姓名:“Ryu”,
腰带:“橙色”,
比率:10,
可用:false
},
{
姓名:“肖恩”,
腰带:“黑色”,
费率:1000,
可用:真
}		
];
}]);
正文{
字体系列:Helvetica;
保证金:0;
}
h1,h2,h3{
保证金:0;
}
.皮带{
填充物:5px10px;
边界半径:10px;
左边距:5px;
颜色:#fff;
字体大小:15px;
文本转换:大写;
}
#菜单栏{
背景:深红色;
颜色:#fff;
填充:10px;
}
#菜单栏h1{
字体大小:24px;
字体大小:正常;
显示:内联块;
}
#菜单栏{
浮动:对;
列表样式类型:无;
填充:0;
利润率:6px0;
}
#菜单栏里{
浮动:对;
左边距:20px;
}
#菜单栏a{
颜色:#fff
}
主要{
背景:#eee;
宽度:80%;
保证金:30像素自动;
边界半径:10px;
}
.内容{
填充:20px;
}
.内容按钮,
.内容输入[type=“submit”]{
背景:#fff;
填充:10px;
边界半径:10px;
光标:指针;
颜色:#777;
边界:0;
盒影:2px2p2pRGBA(20,20,20,0.1);
字体大小:16px;
}
.内容按钮:第n个子项(2){
浮动:对;
}
.内容ul{
填充:0;
列表样式类型:无;
利润率:30px0;
}
李先生{
填充:15px0;
边框顶部:1px实心#E2;
颜色:#444;
}
.李斯潘{
浮动:对;
}
.内容li h3{
显示:内联块;
字体大小:正常;
字体大小:22px;
}
.内容输入{
宽度:90%;
填充物:10px 5%;
边界半径:10px;
边框:2px实心#ddd;
利润率:10px0;
}
.content输入[type=“submit”]:最后一个子项{
宽度:150px;
显示:块;
利润率:15px自动;
}
.移除{
浮动:对;
填充物:5px;
背景:#fff;
宽度:18px;
文本对齐:居中;
边界半径:20px;
颜色:深红色;
光标:指针;
左边距:10px;
}

网络忍者角度播放列表
点名
按皮带订购
  • {{ninja.name}-{ninja.rate |货币:'英镑'} x {{ninja.belt}}belt
{{newninja}}


您的div位置错误-将
移到
{{newninja}}

之后

基本上,ng submit不在ninjacontroller分区内


请参阅-有关工作版本的信息

您的div位于错误的位置-将
移到
上方
之后
{{newninja}

基本上,ng submit不在ninjacontroller分区内

有关myNinjaApp.controller('NinjaController'、['$scope'、'$http'、'$log',函数($scope、$http、$log))的工作版本,请参见-{

}]))

myNinjaApp.controller('NinjaController',['$scope','$http','$log',函数($scope,$http,$log){


}]))

感谢这一点,它在定义了
ng控制器的
div
之外。感谢这一点,它在定义了
ng控制器的
div
之外。
$http({
    url: "data/ninjas.json",
    method: "GET"
}).then(function (resp) {
    //$log.log(resp.data);
    $scope.ninjas = resp;
}, function (resp) {
    $log.error("ERROR Occurred");
    //debugger;
});

$scope.removeNinja = function (ninja) {
    var removeNinja = $scope.ninjas.indexOf(ninja);
    $scope.ninjas.splice(removeNinja, 1);
}

$scope.addNinja = function () {
    $scope.ninjas.push({
        name: $scope.newninja.name,
        belt: $scope.newninja.belt,
        rate: parseInt($scope.newninja.rate),
        available: true
    });
    $scope.newninja.name = "";
    $scope.newninja.belt = "";
    $scope.newninja.rate = "";
};

$scope.removeAll = function () {
    $scope.ninjas = [];
};

$scope.sort = function (keyname) {
    $scope.sortKey = keyname; 
    $scope.reverse = !$scope.reverse;
}