【AngluarJS: Up & Running】P69 CheckBox的双向数据绑定

《AngularJS即学即用》书上的一个错误,坑死我了。真是前人留坑后人踩。
书上的源码:

<html ng-app="notesApp">
<head><title>Notes App</title></head>
<body ng-controller="MainCtrl as ctrl">
<div>
    <h2>What are your favorite sports?</h2>
    <div ng-repeat="sport in ctrl.sports">
        <label ng-bind="sport.label"></label>
        <div>
            With Binding:
            <input type="checkbox"
                   ng-model="sport.selected"
                   ng-true-value="YES"
                   ng-false-value="NO">
        </div>
        <div>
            Using ng-checked:
            <input type="checkbox"
                   ng-checked="sport.selected === 'YES'">
        </div>
        <div>
            Current state: {{sport.selected}}
        </div>
    </div>
</div>

<script src="../lib/angular.js"></script>
<script type="text/javascript">
    angular.module('notesApp', [])
            .controller('MainCtrl', [function() {
                var self = this;
                self.sports = [
                    {label: 'Basketball', selected: 'YES'},
                    {label: 'Cricket', selected: 'NO'},
                    {label: 'Soccer', selected: 'NO'},
                    {label: 'Swimming', selected: 'YES'}
                ];
            }]);
</script>
</body>
</html>

上面代码你绝逼运行不出书上说的效果(两个CheckBox双向绑定,包括下方的文字显示CheckBox当前状态【三重绑定?】)。
经探索,发现错误在这:
这里写图片描述
这两句应该改成:
这里写图片描述
你看到那傲娇的单引号了吗?
这里写图片描述 这里写图片描述
你看到了吗?你真的看到了吗?
这里写图片描述这里写图片描述!!这里写图片描述!!!
然后运行,正确了。
得知真相的我,眼泪掉下来。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值