AngularJS 待办事项 App

下面是一个完整的 AngularJS 示例 App ,实现一个简单的待办事项清单(To-Do List) ,你可以直接复制粘贴到 .html 文件中运行:


✅ 示例:AngularJS 待办事项 App

复制代码
<!DOCTYPE html>
<html ng-app="todoApp">
<head>
  <meta charset="UTF-8">
  <title>AngularJS ToDo App</title>
  <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.8.2/angular.min.js"></script>
  <style>
    body { font-family: Arial; padding: 20px; }
    ul { list-style-type: none; padding: 0; }
    li { margin: 5px 0; }
    .completed { text-decoration: line-through; color: gray; }
  </style>
</head>
<body ng-controller="TodoController">

  <h1>我的待办事项</h1>

  <input type="text" ng-model="newTask" placeholder="添加新任务" />
  <button ng-click="addTask()">添加</button>

  <ul>
    <li ng-repeat="task in tasks">
      <input type="checkbox" ng-model="task.done"> 
      <span ng-class="{completed: task.done}">{{ task.text }}</span>
      <button ng-click="removeTask($index)">删除</button>
    </li>
  </ul>

  <p>剩余任务:{{ remaining() }}</p>

  <script>
    var app = angular.module('todoApp', []);
    app.controller('TodoController', function($scope) {
      $scope.tasks = [
        { text: '学习 AngularJS', done: false },
        { text: '做一个示例 App', done: true }
      ];

      $scope.addTask = function() {
        if ($scope.newTask) {
          $scope.tasks.push({ text: $scope.newTask, done: false });
          $scope.newTask = '';
        }
      };

      $scope.removeTask = function(index) {
        $scope.tasks.splice(index, 1);
      };

      $scope.remaining = function() {
        var count = 0;
        angular.forEach($scope.tasks, function(task) {
          if (!task.done) count++;
        });
        return count;
      };
    });
  </script>

</body>
</html>

🧠 你可以学到:

功能 AngularJS 语法
数据绑定 {``{ task.text }}
控制器 ng-controller="TodoController"
模型绑定 ng-model="newTask"
列表渲染 ng-repeat="task in tasks"
条件样式 ng-class="{completed: task.done}"
事件处理 ng-click="addTask()"

运行结果如下:

相关推荐
白中白121386 分钟前
Vue系列-2
前端·javascript·vue.js
jin42135216 分钟前
React Native鸿蒙跨平台完成闪屏页作为移动应用的入口级页面,实现的二手置换应用闪屏页SecondhandSplash
javascript·react native·react.js·ecmascript·harmonyos
CHU72903518 分钟前
一番赏盲盒小程序前端功能:层级乐趣与便捷服务的双向赋能
前端·小程序
共享家95271 小时前
基于 Coze 工作流搭建历史主题图片生成器
前端·人工智能·js
zhaoyin19941 小时前
fiddler抓包工具使用
前端·测试工具·fiddler
微祎_1 小时前
Flutter for OpenHarmony:构建一个 Flutter 单词拼图游戏,深入解析状态驱动 UI、交互式字母操作与教育类应用设计
javascript·flutter·ui
摘星编程1 小时前
用React Native开发OpenHarmony应用:ProgressBar缓冲进度显示
javascript·react native·react.js
人机与认知实验室1 小时前
<span class=“js_title_inner“>如何看待特斯拉第三代Optimus机器人?</span>
开发语言·javascript·机器人·ecmascript·unix
Doris8931 小时前
【 Vue】 Vue3全面讲解文档
前端·javascript·vue.js
换日线°1 小时前
vue 实现Element Plus的炫酷主题切换
javascript·vue.js