angular.js - 数据绑定问题,怎样达到每过一秒更新clock.now数据的目的,显示的一直是clock.now。这是敲书上的代码,问题出在哪?
漂亮男人
漂亮男人 2017-05-15 17:03:37
0
2
539
<!doctype html>
<html ng-app>
    <head>
        <script type="text/javascript" src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js">
        </script>
    </head>
<body>
    <p ng-controller = "MyController">
        <h1>hello {{ clock.now }}!</h1>
    </p>
    <script>
        function MyController($scope) {
            $scope.clock = {
                now: new Date()
            };
            var updateClock = function() {
                $scope.clock.now = new Date();
            };
            setInterval(function() {
                $scope.$apply(updateClock);
            }, 1000);
            updateClock();
        };
    </script>
</body>
</html>
漂亮男人
漂亮男人

membalas semua(2)
曾经蜡笔没有小新

API telah bertukar kepada versi 1.3 ke atas dan tidak membenarkan pengawal global (saya rasa buku anda lebih lama)

Anda boleh terus mengurangkan versi dengan cara yang mudah dan kasar ini

<!doctype html>
<html ng-app>
<head>
    <script type="text/javascript" src="http://apps.bdimg.com/libs/angular.js/1.2.6/angular.js">
    </script>
</head>
<body>
<p ng-controller="MyController">
    <h1>hello {{ clock.now }}!</h1>
</p>
<script>
    function MyController($scope) {
        $scope.clock = {
            now: new Date()
        };
        var updateClock = function () {
            $scope.clock.now = new Date();
        };
        setInterval(function () {
            $scope.$apply(updateClock);
        }, 1000);
        updateClock();
    }
</script>
</body>
</html>

Atau tukar ini kepada kaedah penulisan yang disyorkan selepas naik taraf

<!doctype html>
<html ng-app="app">
<head>
    <script type="text/javascript" src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.js">
    </script>
</head>
<body>
<p ng-controller="MyController">
    <h1>hello {{ clock.now }}!</h1>
</p>
<script>
    angular.module('app', [])
            .controller('MyController', ['$scope', function MyController($scope) {
                $scope.clock = {
                    now: new Date()
                };
                var updateClock = function () {
                    $scope.clock.now = new Date();
                };
                setInterval(function () {
                    $scope.$apply(updateClock);
                }, 1000);
                updateClock();

            }]);

</script>
</body>
</html>
过去多啦不再A梦

Kod anda hanya akan dilaksanakan sekali Ia akan menempah kemas kini seterusnya secara automatik setiap kali kemas kini dilaksanakan untuk mencapai matlamat perubahan sesaat.
Saya belum membaca buku ini, tetapi saya rasa pendakap anda berada dalam kedudukan yang salah.
Adakah anda akan mencuba ini?

<!doctype html>
<html ng-app>
    <head>
        <script type="text/javascript" src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js">
        </script>
    </head>
<body>
    <p ng-controller = "MyController">
        <h1>hello {{ clock.now }}!</h1>
    </p>
    <script>
        function MyController($scope) {
            $scope.clock = {
                now: new Date()
            };
            var updateClock = function() {
                $scope.clock.now = new Date();
                setInterval(function() {
                    $scope.$apply(updateClock);
                }, 1000);
            };
            updateClock();
        };
    </script>
</body>
</html>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan