Angular待办事项应用3

隔离业务逻辑

接着上一节,业务逻辑应该复古牛仔单独的service中,我们在todo文件夹中建立TodoService

 

ng g s todo/todo

  

引入UUID包

todo中id要唯一,一个是采用一个自增长数列,一个是采用随机生成的一组不可能重复的字符序列,常见的就是UUID

npm install --save angular2-uuid

  安装成功:

修改id类型

 
export class Todo {
    id:string;
    desc:string;
    completed:boolean;
}

  

修改service

import { Injectable } from '@angular/core';
import { Todo } from "./todo.model";
import { UUID } from "angular2-uuid";

@Injectable()
export class TodoService {

  todos:Todo[]=[];
  addTodo(todoItem:string):Todo[]{
    let todo={
      id:UUID.UUID(),
      desc:todoItem,
      completed:false
    };
    this.todos.push(todo);
    return this.todos;
  }

  constructor() { }

}

  

 组件注入依赖service

import { Component, OnInit } from '@angular/core';
import { Todo } from "./todo.model";
import { TodoService } from "./todo.service";

@Component({
  selector: 'app-todo',
  templateUrl: './todo.component.html',
  styleUrls: ['./todo.component.css'],
  providers:[TodoService]
})
export class TodoComponent implements OnInit {

  todos:Todo[]=[];
  desc='';
  addTodo(){
    this.todos=this.service.addTodo(this.desc);
    this.desc='';
  }

  constructor(private service:TodoService) { }

  ngOnInit() {
  }

}

  

 

 安装插件(可选)

为了清晰看到成果,我们为chrome浏览器安装一个插件,在chrome地址栏输入

chrome://extensions/

  

 

 

 下载一个“Angury”插件安装即可,然后按F12键调出开发者工具,里面有一个Angury的tab

 

 

ok!

 

 

 

 

转载于:https://www.cnblogs.com/1906859953Lucas/p/9780929.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值