为了账号安全,请及时绑定邮箱和手机立即绑定

简单问题:为什么angular js无法正常工作?

简单问题:为什么angular js无法正常工作?

蝴蝶不菲 2018-10-16 13:31:23
我写了一段简单代码,使用了angular js,可是不知道为什么,程序并没有响应我的代码,代码如下:<!DOCTYPE html><html ng-app>     <head>         <title>js </title>        <script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script>     </head>     <body>         <table ng-controller="BasketCtrl">             <tr><td>Item:</td><td>{{description}}</td></tr>             <tr><td>cost:</td><td>{{cost}}</td></tr>             <tr><td>qty:</td><td><input type="number" ng-model="qty"></td></tr>             <tr><td>subtotal:</td><td>{{qty * cost|currency}}</td></tr>         </table>         <script src="./js/test1.js"></script>     </body></html>test1.js是我自己定义的一小段js:function BasketCtrl($scope) {     $scope.description='Singe ticket';     $scope.cost=8;     $scope.qty=1; }然而,似乎并不能正确运行:那个cdn是用的网上一个叫“菜鸟教程”所提供的,没有问题。作为新手实在是不明白自己这段代码的问题所在,希望有朋友和大神可以指出,谢谢~
查看完整描述

1 回答

?
炎炎设计

TA贡献1808条经验 获得超4个赞

你使用的Angular版本是1.4.6,而在Angular1.3.0及其后版本中,不允许直接在根节点上(rootScope)上挂载控制器,而你写的代码中是直接注册了控制器,所以控制台必定会报错。
解决方法是创建模块,即在HTML中设置ng-app="basket"
在JS中:

var app = angular.module('basket');                        
// 创建的模块名,在ng-app中使用此名称app.controller('BasketCtrl', function BasketCtrl($scope) { // 在模块上注册控制器
    $scope.description='Singe ticket';
    $scope.cost=8;
    $scope.qty=1;
})


查看完整回答
反对 回复 2018-11-01
  • 1 回答
  • 0 关注
  • 521 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号