【翻译】在Angular中操作DOM:意料之外的结果及优化技术

原文链接:https://blog.angularindepth.c...
作者:Max Koretskyi
译者:而井

我最近在NgConf的一个研讨会上讨论了Angular中的高级DOM操作的话题。我从基础知识开始讲起,例如使用模版引用和DOM查询来访问DOM元素,一直谈到了使用视图容器来动态渲染模版和组件。如果你还没有看过这个演讲,我鼓励你去看看。通过一系列的实践,你将可以快速地学会新知识,并加强认知。关于这个话题,我在NgViking 也有一个简单地谈话。

然而,如果你觉得那个版本太长了(译者注:指演讲视频)不想看,或者比起听,你更喜欢阅读,那么我在这篇文章总结了(演讲的)关键概念。首先,我会介绍在Angular中操作DOM的工具和方法,然后再介绍一些我在研讨会上没有说过的、更高级的优化技术。

你可以在这个GitHub仓库中找到我演讲中使用过的样例。

窥探视图引擎

假设你有一个要将一个子组件从DOM中移除的任务。这里有一个父组件,它的模块中有一个子组件A需要被移除:

@Component({...template: `<button (click)="remove()">Remove child component</button><a-comp></a-comp>`
})
export class AppComponent {}

解决这个任务的一个错误的方法就是使用Renderer或者原生的DOM API来直接移除<a-comp> DOM 元素:

@Component({...})
export class AppComponent {...remove() {this.renderer.removeChild(this.hostElement.nativeElement, // parent App comp nodethis.childComps.first.nativeElement // child A comp node);}
}

你可以在这里看到整个解决方案(译者注:样例代码)。如果你通过Element tab来审查移除节点之后的HTML结果,你将看到子组件A已经不存在DOM中了。

然而,如果你接着检查一下控制台,Angular依然报道子组件的数量为1,而不是0。并且关于对子组件A及其子节点的变更检测还在错误的运行着。这里是控制台输出的日志:

为什么?

发生这种情况是因为,在Angular内部中,使用了通常称为View或Component View的数据结构来代表组件。这张图显示了视图和DOM之间的关系:

每个视图都由持有对应DOM元素的视图节点所组成。所以,当我们直接修改DOM的时候,视图内部的视图节点以及持有的DOM元素引用并没有被影响。这里有一张图可以展示在我们从DOM中移除组件A后,DOM和视图的状态:

并且由于所有的变更检测操作和对子视图的包含,都是运行在视图中而不是DOM上,Angular检测与组件相关的视图,并且报告(译者注:组件数量)为1,而不是我们期望的0。此外,由于与组件A相关的视图依旧存在,所以对于组件A及其子组件的变更检测操作依然会被执行。

要正确地解决这个问题,我们需要一个能直接处理视图的工具,在Angular中它就是视图容器View Container。

视图容器View Container

视图容器可以保障DOM级别的变动的安全,在Angular中,它被所有内置的结构指令所使用。在视图内部有一种特别的视图节点类型,它扮演着其他视图容器的角色:

正如你所见的那样,它持有两种类型的视图:嵌入视图(embedded views)和宿主视图(host views)。

在Angular中只有这些视图类型,它们(视图)主要的不同取决于用什么输入数据来创建它们。并且嵌入视图只能附加(译者注:挂载)到视图容器中,而宿主视图可以被附加到任何DOM元素上(通常称其为宿主元素)。

嵌入视图可以使用TemplateRef通过模版来创建,而宿主视图得使用视图(组件)工厂来创建。例如,用于启动程序的主要组件AppComponent,在内部被当作为一个用来附加挂载组件宿主元素<app-comp>的宿主视图。

视图容器提供了用来创建、操作和移除动态视图的API。我称它们为动态视图,是为了和那些由框架在模版中发现的静态组件所创建出来的静态视图做对比。Angular不会对静态视图使用视图容器,而是在子组件特定的节点内保持一个对子视图的引用。这张图可以表明这个想法:

正如你所见,这里没有视图容器,子视图的引用是直接附加到组件A的视图节点上的。

操控动态视图

在你开始创建一个视图并将其附加到视图容器之前,你需要引入组件模版的容器并且将其进行实例化。模版中的任何元素都可以充当视图容器,不过,通常扮演这个角色的候选者是<ng-container>,因为在它会渲染成一个注释节点,所以不会给DOM带来冗余的元素。

为了将任意元素转化成一个视图容器,我们需要对一个视图查询使用{read: ViewContainerRef} 配置:

@Component({…template: `<ng-container #vc></ng-container>`
})
export class AppComponent implements AfterViewChecked {@ViewChild('vc', {read: ViewContainerRef}) viewContainer: ViewContainerRef;
}

一旦Angular执行对应的视图查询并将视图容器的的引用赋值给一个类的属性,你就可以使用这个引用来创建一个动态视图了。

创建一个嵌入视图

为了创建一个嵌入视图,你需要一个模版。在Angular中,我们会使用<ng-template> 来包裹任意DOM元素和定义模版的结构。然后我们就可以简单地用一个带有 {read: TemplateRef} 参数的视图查询来获取这个模版的引用:

@Component({...template: `<ng-template #tpl><!-- any HTML elements can go here --></ng-template>`
})
export class AppComponent implements AfterViewChecked {@ViewChild('tpl', {read: TemplateRef}) tpl: TemplateRef<null>;
}

一旦Angular执行这个查询并且将模版的引用赋值给类的属性后,我们就可以通过createEmbeddedView方法使用这个引用来创建和附加一个嵌入视图到一个视图容器中:

@Component({ ... })
export class AppComponent implements AfterViewInit {...ngAfterViewInit() {this.viewContainer.createEmbeddedView(this.tpl);}
}

你需要在ngAfterViewInit生命周期中实现你的逻辑,因为视图查询是那时完成实例化的。而且你可以给模版(译者注:嵌入视图的模版)中的值绑定一个上下文对象(译者注:即模版上绑定的值隶属于这个上下文对象)。你可以通过查看API文档来了解更多详情。

你可以在这里找到创建嵌入视图的整个样例代码。

创建一个宿主视图

要创建一个宿主视图,你就需要一个组件工厂。如果你需要了解Angular中动态组件的话,点击这里可以学习到更多关于组件工厂和动态组件的知识。

在Angular中,我们可以使用componentFactoryResolver这个服务来获取一个组件工厂的引用:

@Component({ ... })
export class AppComponent implements AfterViewChecked {...constructor(private r: ComponentFactoryResolver) {}ngAfterViewInit() {const factory = this.r.resolveComponentFactory(ComponentClass);}}
}

一旦我们得到一个组件工厂,我们就可以用它来初始化组件,创建宿主视图并将其视图附加到视图容器之上。为了达到这一步,我们只需简单地调用createComponent方法,并且传入一个组件工厂:

@Component({ ... })
export class AppComponent implements AfterViewChecked {...ngAfterViewInit() {this.viewContainer.createComponent(this.factory);}
}

你可以在这里找到创建宿主视图的样例代码。

移除视图

一个视图容器中的任何附加视图,都可以通过removedetach方法来删除。两个方法都会将视图从视图容器和DOM中移除。但是remove方法会销毁视图,所以之后不能重新附加(译者注:即从缓存中获取再附加,不用重新创建),detach方法会保持视图的引用,以便未来可以重新使用,这个对于我接下来要讲的优化技术很重要。

所以,为了正确地解决移除一个子组件或任意DOM元素这个问题,首先有必要创建一个嵌入视图或宿主视图,并将其附加到视图容器上。然后你才有办法使用任何可用的API方法来将视图从视图容器和DOM中移除。

优化技术

有时你需要重复地渲染和隐藏模版中定义好的相同组件或HTML。在下面这个例子中,通过点击不同的按钮,我们可以切换要显示的组件:

如果我们把之前学过的知识简单地应用一下,那代码将会如下所示:

@Component({...})
export class AppComponent {show(type) {...// 视图被销毁this.viewContainer.clear();// 视图被创建并附加到视图容器之上   this.viewContainer.createComponent(factory);}
}

最终,我们会得一个不想要的结果:每当按钮被点击、show方法被执行时,视图都会被销毁和重新创建。

在这个例子中,宿主视图会因为我们使用组件工厂和createComponent方法,而销毁和重复创建。如果我们使用createEmbeddedView方法和TemplateRef,那嵌入视图也会被销毁和重复创建:

show(type) {...// 视图被销毁this.viewContainer.clear();// 视图被创建并附加到视图容器之上   this.viewContainer.createEmbeddedView(this.tpl);
}

理想状况下,我们只需创建视图一次,之后在我们需要的时候复用它。有一个视图容器的API,它提供了将已经存在的视图附加到视图容器之上、移除视图却不销毁视图的办法。

ViewRef

ComponentFactoryTemplateRef都实现了用来创建视图的创建方法。事实上,当你调用createEmbeddedViewcreateComponent 方法并传入输入数据时,视图容器在底层内部使用了这些创建方法。有一个好消息就是我们可以自己调用这些方法来创建一个嵌入或宿主视图、获取视图的引用。在Angular中,视图可以通过ViewRef及其子类型来引用。

创建一个宿主视图

所以通过这样,你可以使用一个组件工厂来创建一个宿主视图和获取它的引用:

aComponentFactory = resolver.resolveComponentFactory(AComponent);
aComponentRef = aComponentFactory.create(this.injector);
view: ViewRef = aComponentRef.hostView;

在宿主视图情况下,视图与组件的关联(引用)可以通过ComponentRef调用create方法来获取。通过一个hostView属性来暴露。

一旦我们获得到这个视图,它就可以通过insert方法附加到一个视图容器之上。另外一个你不想显示的视图可以通过detach方法来从视图中移除并保持引用。所以可以通过这样来解决组件切换显示问题:

showView2() {...//  视图1将会从视图容器和DOM中移除this.viewContainer.detach();// 视图2将会被附加于视图容器和DOM之上this.viewContainer.insert(view);
}

注意,我们使用detach方法来代替clearremove方法,为之后的复用保持视图(的引用)。你可以在这里找到整个实现。

创建一个嵌入视图

在以一个模版为基础来创建一个嵌入视图的情况下,视图(引用)可以直接通过createEmbeddedView方法来返回:

view1: ViewRef;
view2: ViewRef;
ngAfterViewInit() {this.view1 = this.t1.createEmbeddedView(null);this.view2 = this.t2.createEmbeddedView(null);
}

与之前的例子类似,有一个视图将会从视图容器移除,另外一个视图将会被重新附加到视图容器之上。你可以在这里找到整个实现。

有趣的是,视图容器(译者注:ViewContainerRef类型)的createEmbeddedViewcreateComponent这两个创建视图的方法,都会返回被创建的视图的引用。

查看全文
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

相关文章

  1. angular ng-repeat 动态获取的dom片段 显示

    .filter(to_trusted, [$sce,function ($sce) {return function (text) {return $sce.trustAsHtml(text);}}]) 转载于:https://www.cnblogs.com/cynthia-wuqian/p/6963692.html...

    2024/4/28 14:09:54
  2. Angular 页面元素的DOM级别的删除过程

    我的Angular视图里有如下一组p节点&#xff0c;通过自定义指令控制&#xff1a; <p>The condition is currently<span [ngClass]"{ a: !condition, b: condition, unless: true, fuck_false: false, fuck_true: true }">{{condition}}</span>.<…...

    2024/4/21 3:38:43
  3. Angular表单 Dom获取表单值 以及双向数据绑定

    1. Angular表单 Dom获取表单值 以及双向数据绑定 1.1 首先新建一个项目 进入到想要创建angular项目的文件夹&#xff0c;打开cmd输入&#xff1a; ng new 项目名1.2 给项目新增一个组件 cmd进入该项目&#xff0c;输入&#xff1a; ng g component components/form这段代码…...

    2024/4/28 14:21:40
  4. angular监听dom渲染完成,判断ng-repeat循环完成

    一、前言 最近做了一个图片懒加载的小插件&#xff0c;功能需要dom渲染完成后&#xff0c;好获取那些需要懒加载的dom元素。那么问题来了&#xff0c;如果只是感知静态的dom用ready&#xff0c;onload都可以&#xff0c;但项目用的angular&#xff0c;ng-repeat什么时候循环完&…...

    2024/4/21 3:38:41
  5. [译] Angular DOM 更新机制

    原文链接&#xff1a;The mechanics of DOM updates in Angular 由模型变化触发的 DOM 更新是所有前端框架的重要功能&#xff08;注&#xff1a;即保持 model 和 view 的同步&#xff09;&#xff0c;当然 Angular 也不例外。定义一个如下模板表达式&#xff1a; <span>…...

    2024/4/21 3:38:40
  6. angularJs点击获得当前dom节点

    在点击事件中传入 $event 参数&#xff0c;使用时候用$event.target获取到dom对象 <input id"sub" type"checkbox" ng-model"item.isSelected" value"sub" name"sub"ng-click"selectedApp($event, item.isSelected…...

    2024/4/20 20:03:36
  7. 探索Angular DOM操作技术

    每当我读到关于Angular DOM操作的的文章时总是看到这些类被提到&#xff1a;ElementRef, TemplateRef,ViewContainerRef等等。不幸的是&#xff0c;尽管其中一些内容已在Angular文档或相关文章中介绍&#xff0c;但我还没找到对它们整体模型的介绍以及它们如何协同工作的示例&a…...

    2024/4/28 5:38:18
  8. 8Angular中Dom操作:ViewChild,实现CSS3动画

    1&#xff1a;ngAfterViewInit 通过原生JS获取dom都是在dom加载完成后获取&#xff0c;Angular中也一样&#xff0c;那么Angular中在哪里获取呢&#xff1f;应该在ngAfterViewInit里操作&#xff0c;关于详细信息可以看官方文档Angular生命周期函数&#xff0c;在ngOnIn…...

    2024/4/28 13:11:19
  9. angular6 自定义DOM节点属性(非标准DOM属性设置)

    文章目录文章参考问题描述模板绑定是通过 property 和事件来工作的&#xff0c;而不是 attribute。自定义设置属性值文章参考 angular5 给元素添加自定义属性 问题描述 今天想总结一下angular基础知识&#xff0c;想自己写一个自定义myname属性的demo&#xff0c;类似于jque…...

    2024/4/28 14:43:19
  10. angular2操作DOM总结

    1&#xff1a;Render2(示例) 是angular2中执行UI渲染的内置服务&#xff0c;可以增加、删除元素&#xff0c;修改元素Property、Attribute、Class、Style等... ViewChild html代码&#xff1a; <span #name>Shine</span> ts代码&#xff1a; export class InputEma…...

    2024/4/28 7:43:49
  11. angular 中的dom操作(原生JS)

    <h2>这是一个home组件--DOM操作演示</h2> <div id"box">this is box </div> <br> <div id"box1" *ngIf"flag">this is box1 </div> import { Component, OnInit } from angular/core;Component({sel…...

    2024/4/21 3:38:37
  12. Angular中使用viewchild操作dom和子组件

    ViewChild获取dom节点 首先在项目中新建名为dom的组件 步骤 模板中给dom节点起名字在业务逻辑中引入viewchild通过viewchild装饰器获得dom节点在ngAfterViewInit中操作dom节点 示例 html中写一个id为myBox的节点 <h2>dom works!</h2> <div #myBox> he…...

    2024/4/21 3:38:37
  13. Angular 8 中Dom以及表单操作

    实例一 form.component.html&#xff1a; <h2>人员登记系统</h2> <div class"people_list"> <ul> <li>姓 名&#xff1a;<input type"text" id"username" [(ngModel)]"peopleInfo.username" valu…...

    2024/4/26 17:44:25
  14. 【angular获取dom】 【@ViewChild】 【ElementRef】 【Renderer2】【pipe】【subject】

    这里的 square 是个变量不是字符串&#xff0c;要让它是字符串应该加上引号。 [nzStrokeLinecap]"square" 获取 dom 元素&#xff1a; * 可以通过 ViewChil 获取【父子组件关系】的dom元素 export class ProtocolComponent implements OnInit { ViewChild(Protoco…...

    2024/4/27 22:38:06
  15. ionic5/angular11使用angular的@ViewChild获取DOM(@ViewChildren获取DOM数组)并使用Renderer2操作DOM

    一、编写HTML和CSS。 <ion-header [translucent]"true"><ion-toolbar><ion-title>分类</ion-title></ion-toolbar> </ion-header><ion-content class"content" ><div class"content_1" ><…...

    2024/4/21 3:38:33
  16. angularJS概念理解三:控制器

    在AngularJS中&#xff0c;实现数据绑定的核心是scope对象。 控制器让我们有机会在scope上定义我们的业务逻辑&#xff0c;具体说&#xff0c;可以使用控制器&#xff1a; 对scope对象进行初始化向scope对象添加方法 在模板中声明控制器 在一个HTML元素上使用ng-controller指令…...

    2024/4/28 13:19:13
  17. Angular2+ 获取、操作DOM元素

    前言 angular中在’angular/core’库中通过提供Renderer2和ElementRef中实现了有关于DOM的操作&#xff0c;但是&#xff0c;angular中不推荐直接操作dom元素&#xff0c;通过变量结合内置指令是当前操作DOM的最好实践 获取DOM元素 1、通过模板变量名获取单个DOM元素 ViewChil…...

    2024/4/21 3:38:31
  18. angular通过script外部导入方法

    如下图1&#xff0c;我右键tippy&#xff0c;vscode没有直接帮我定位对应封装的方法中&#xff0c;于是我就去import中找&#xff0c;发现也没有&#xff0c;然后在html标签中发现是通过script标签嵌入的&#xff0c;如图2 于是我就去到module中找到tippy方法&#xff0c;查看p…...

    2024/4/21 3:38:32
  19. 项目常见错误及解决方法-angular提示控制器未注册

    在angular项目中&#xff0c;遇到路由配置都正常&#xff0c;但是打开页面报错&#xff1a; 最后发现&#xff0c;注入服务&#xff0c;有重复&#xff1a; &#xff0c;删掉一个后&#xff0c;正常...

    2024/4/21 3:38:29
  20. angular中两个控制器直接传值

    这是简单的做了一个demo&#xff1a; <!DOCTYPE html> <html> <head><title></title><script type"text/javascript" src"js/angular.js"></script> </head> <body><div ng-app"myApp&quo…...

    2024/4/23 16:26:52

最新文章

  1. QT +C++环境使用Python.h调用python函数时使用了matplotlib画图出现问题

    问题描述&#xff1a; 代码、函数没有任何问题就只有matplotlib部分有问题。 原因1&#xff1a; 使用了.show函数&#xff0c;QT中不可像python那样使用matplotlib进行交互&#xff0c;所以删除show改成存储在指定位置即可 import matplotlib matplotlib.use(Agg) # 使用非交…...

    2024/4/28 17:49:51
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. Java中的装饰器模式

    在Java中&#xff0c;装饰器模式允许我们动态地给对象添加新的行为或责任&#xff0c;而无需修改原有类。以下是一个简单的装饰器模式示例&#xff0c;我们将模拟一个咖啡销售系统&#xff0c;其中基础饮料类&#xff08;Component&#xff09;是Coffee&#xff0c;装饰器类&am…...

    2024/4/27 18:41:44
  4. Finetuned Language Models Are Zero-Shot Learners

    Abstract 本文探索了一种简单的方法来提升语言模型的零样本(zero-shot)学习能力。我们发现 指令微调(instruction tuning) 显著提高了未见任务的零样本性能。 指令微调:即在一组通过指令描述的数据集上对模型进行微调我们对一个 137B 参数的预训练模型在 60 个 NLP 任务上…...

    2024/4/25 22:48:19
  5. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/4/28 13:52:11
  6. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/4/28 3:28:32
  7. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/4/26 23:05:52
  8. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/4/28 13:51:37
  9. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/4/27 17:58:04
  10. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/4/27 14:22:49
  11. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/4/28 1:28:33
  12. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/4/28 15:57:13
  13. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/4/27 17:59:30
  14. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/4/25 18:39:16
  15. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/4/28 1:34:08
  16. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/4/26 19:03:37
  17. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/4/28 1:22:35
  18. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/4/25 18:39:14
  19. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/4/26 23:04:58
  20. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/4/27 23:24:42
  21. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/4/28 5:48:52
  22. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/4/26 19:46:12
  23. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/4/27 11:43:08
  24. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/4/27 8:32:30
  25. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  26. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  27. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  28. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  29. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  30. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  31. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  32. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  33. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  34. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  35. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  36. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  37. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  38. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  39. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  40. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  41. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  42. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  43. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  44. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57