当前位置: 首页 > news >正文

做水果苹果大的网站/广州企业网站建设

做水果苹果大的网站,广州企业网站建设,深圳外包网站制作公司,做模具在哪个网站找工作一、Angular 中的 dom 操作(原生 js) 1.1 首先新建一个Angular项目: 在想要建立项目的目录打开命令行输入: ng new angularDemo1.2 然后创建一个home组件 ng g component components/home1.3 组件的结构 home.component.html …

一、Angular 中的 dom 操作(原生 js)


1.1 首先新建一个Angular项目:

在想要建立项目的目录打开命令行输入:

ng new angularDemo

1.2 然后创建一个home组件

ng g component components/home

1.3 组件的结构

在这里插入图片描述
home.component.html

<h2>这是一个home组件--DOM操作演示</h2>
<div id="box">this is box
</div>
<br>
<div id="box1" *ngIf="flag">this is box1
</div>

1.4 写入数据

在这里插入图片描述


home.component.ts

import { Component, OnInit } from '@angular/core';@Component({selector: 'app-home',templateUrl: './home.component.html',styleUrls: ['./home.component.css'],
})
export class HomeComponent implements OnInit {public flag: boolean = true;constructor() {}ngOnInit() {//组件和指令初始化完成   并不是真正的dom加载完成let oBox: any = document.getElementById('box');console.log(oBox.innerHTML);oBox.style.color = 'red';//获取不到dom节点/*let oBox1:any=document.getElementById('box1');console.log(oBox1.innerHTML);oBox1.style.color="blue";*/}//视图加载完成以后触发的方法    dom加载完成  (建议把dom操作放在这个里面)ngAfterViewInit() {let oBox1: any = document.getElementById('box1');console.log(oBox1.innerHTML);oBox1.style.color = 'blue';}
}

1.5 引入组件

在这里插入图片描述
app.component.html

<app-home></app-home>

1.6 运行程序

命令行输入:

ng serve --open

运行结果:
在这里插入图片描述


1.7 总结:

视图加载完成以后触发的方法 dom加载完成 (建议把dom操作放在这个里面)

ngAfterViewInit(){ 
var boxDom:any=document.getElementById('box'); boxDom.style.color='red'; 
}

组件和指令初始化完成 并不是真正的dom加载完成

  ngOnInit() {let oBox: any = document.getElementById('box');console.log(oBox.innerHTML);oBox.style.color = 'red';}

二、Angular 中的 dom 操作(ViewChild)


2.1 我们在刚刚创建的里面里面有创建一个组件news

ng g component components/news

2.2 组件的结构

给dom结点命名: #+名称

<div #myBox>我是一个dom结点.
</div>

2.3 导入组件和获取结点

在这里插入图片描述
news.components.ts

// 1.导入组件ViewChild
import { Component, OnInit, ViewChild } from '@angular/core';@Component({selector: 'app-news',templateUrl: './news.component.html',styleUrls: ['./news.component.css'],
})
export class NewsComponent implements OnInit {// 2.获取dom结点@ViewChild('myBox') myBox: any;constructor() {}ngOnInit(): void {}ngAfterViewInit(): void {this.myBox.nativeElement.style.width = '200px';this.myBox.nativeElement.style.height = '200px';this.myBox.nativeElement.style.backgroundColor = 'orange';}
}

2.4 引入组件

在这里插入图片描述
app.component.html

<app-news></app-news>

2.5 运行程序

命令行输入:

ng serve --open

运行结果:
在这里插入图片描述


2.7 总结

ViewChild获取dom节点

1、模板中给dom起一个名字<div #myBox>我是一个dom节点</div>2、在业务逻辑里面引入ViewChild
import { Component, OnInit,ViewChild} from '@angular/core';3、 写在类里面    @ViewChild('myBox') myBox:any;4、ngAfterViewInit生命周期函数里面获取domthis.myBox.nativeElement

三、父子组件中通过 ViewChild 调用子组件的方法


3.1 定义子组件

ng g component components/header

3.2 定义子组件的结构

在这里插入图片描述
hearder.component.html

<h1>我是一个头部组件</h1>

3.3 美化组件

在这里插入图片描述

hearder.component.css

h1 {text-align: center;color: #fff;background: #000;
}

3.4 父组件引入子组件

在这里插入图片描述
news.component.html

<app-header #header></app-header>
<br>
<br>
<div #myBox>我是一个dom结点.
</div>
<button (click)="getChildRun()">获取子组件的方法</button>

3.5 父组件操作子组件

在这里插入图片描述

news.component.ts

// 1.导入组件ViewChild
import { Component, OnInit, ViewChild } from '@angular/core';@Component({selector: 'app-news',templateUrl: './news.component.html',styleUrls: ['./news.component.css'],
})
export class NewsComponent implements OnInit {// 2.获取dom结点@ViewChild('myBox') myBox: any;// 获取子组件@ViewChild('header') header: any;constructor() {}ngOnInit(): void {}ngAfterViewInit(): void {this.myBox.nativeElement.style.width = '200px';this.myBox.nativeElement.style.height = '200px';this.myBox.nativeElement.style.backgroundColor = 'orange';}// 父组件操作子组件public getChildRun(): void {// 调用子组件里面的方法this.header.run();}
}

3.6 引入组件

在这里插入图片描述
app.component.html

<app-news></app-news>

3.7 启动程序

命令行输入:

ng serve --open

运行结果:
在这里插入图片描述
在这里插入图片描述



http://www.lbrq.cn/news/803845.html

相关文章:

  • 五常市网站/网站如何建立
  • 部门门户网站建设的目的/腾讯广告推广平台
  • 肇庆市有那家做网站的/友情链接分析
  • 网站建设制作需要多少钱/关键词快速排名不限行业
  • 做兼职什么网站靠谱/什么叫软文推广
  • 揭阳模板建站开发公司/平台广告推广
  • wordpress 淘客主题/北京网络seo推广公司
  • 网站建设公司简介模板下载/郑州seo优化外包顾问
  • 企业营销型网站有特点/一站式网站建设公司
  • 建手机网站怎么收费/2345网址导航电脑版官网
  • 一个网站的建设流程有哪些资料/7月新闻大事件30条
  • 天津外贸网站建设/谷歌优化方法
  • 网站锚文本怎么做/今日头条国际军事新闻
  • 一般通过人体的电流超过多大/seo优化排名是什么
  • 凡科的网站做seo比较难/百度搜索指数排行
  • 南京高端网站建设公司哪家好/建设网站制作公司
  • 哪里做网站做的好/企业推广方式有哪些
  • 个人网站怎么做联盟推广/广州seo快速排名
  • 十大电商代运营服务商/windows优化软件
  • 武汉网页设计公司/seo是什么的
  • 公司建设网站算入什么会计科目/重庆今日头条新闻消息
  • 制作网站建设的公司/云搜索
  • wordpress 留言板插件/公众号seo排名
  • wordpress仿站模板制作教程/南京seo公司
  • 网站运营设计/优秀营销软文范例100字
  • wordpress orchidv 插件/seo与sem的区别与联系
  • 领星erp系统/seo搜索排名优化是什么意思
  • wordpress 调用浏览数/四川seo推广
  • 百姓网招聘/seo对网店推广的作用有哪些
  • vs2012网站开发课程设计/seo的培训班
  • Node.js 路由与中间件
  • Vue项目使用ssh2-sftp-client实现打包自动上传到服务器(完整教程)
  • 函数 dirfd 详解
  • 3. boost::asio之同步读写的客户端和服务器示例
  • 今日矩阵系列
  • Linux Flathub软件管理方法 使用指南