angularjs学习笔记(一)

本文深入探讨了在单页应用中加载多个AngularJS ng-app的问题及解决方案,详细讲解了如何手动加载额外的ng-app,以及如何使用ng-model和ng-repeat进行数据绑定和模板循环。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

div ng-app:

当在单个页面上加载了多个 ng-app 时,只有第一个会起作用。

查询后找到答案:在 angular 页面中,每一个 HTML 页面只有一个 ng-app 会被自动装载。

解决方案:其余的ng-app 可手动加载。

代码:

<div ng-app="first" 
        <p>我的第一个表达式: {{ 5 + 5 }}</p>
    </div>
    <div id="divSecond" ng-app="second" ng-controller="secondController">
 
        <p>总价: {{ quantity * cost }}</p>
 
    </div>
    <script>
        var app = angular.module('second', []);
        app.controller('secondController', function ($scope) {
            $scope.quantity = 1;
            $scope.cost = 5;
        });
        angular.bootstrap(document.getElementById("divSecond"), ['second']);//使用angular.bootstrap() 完成模块的手动加载

    </script>

ng-model

可绑定input数据,并且对多组数据进行操作


    <div id="divThird" ng-app="third" ng-controller="thirdController">
        数量:<input type="type" name="name" value="" ng-model="num" />
        价格:<input type="type" name="name" value="" ng-model="price" />
           <br />
           <p>总价:<span>{{num*price}}</span></p>//计算两个model总和
    </div>

 

ng-repeat

angular.js 中的模板循环指令

 <div ng-app="">
        <p>我的第一个表达式: {{ 5 + 5 }}</p>
    </div>
    <div id="divSecond" ng-app="second" ng-controller="secondController">

        <p>总价: {{ quantity * cost }}</p>
        <p>总价:<span ng-bind="quantity * cost"></span></p>

    </div>
    <div id="divThird" ng-app="third" ng-controller="thirdController">
        数量:<input type="type" name="name" value="" ng-model="num" />
        价格:<input type="type" name="name" value="" ng-model="price" />
        <br />
        <p>总价:<span>{{num*price}}</span></p>
        <p>使用 ng-repeat 来循环数组</p>
        <ul>
            <li ng-repeat="x in names"> //循环标签
                {{ x }}
            </li>
        </ul>
    </div>
    <script>
        var app = angular.module('second', []);
        app.controller('secondController', function ($scope) {
            $scope.quantity = 1;
            $scope.cost = 5;
        });
        angular.bootstrap(document.getElementById("divSecond"), ['second']);//使用angular.bootstrap() 完成模块的手动加载
        var app = angular.module('third', []);
        app.controller('thirdController', function ($scope) {
            $scope.names = ['Jani', 'Hege', 'Kai'];   //被循环的对象
        });
        angular.bootstrap(document.getElementById("divThird"), ['third']);//使用angular.bootstrap() 完成模块的手动加载
    </script>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

没有永远的记忆,只有勤奋的笔记

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值