链接: 文档地址.

1.认识Redux

1.1JavaScript纯函数

函数式编程中有一个概念叫纯函数,JavaScript符合函数式编程的范式,所以也有纯函数的概念;

React中,纯函数的概念非常重要,在接下来我们学习的Redux中也非常重要,所以我们有必要来回顾一下纯函数。

纯函数的维基百科定义

在程序设计中,若一个函数符合以下条件,那么这个函数被称为纯函数;

  • 此函数在相同的输入值时,需产生相同的输出。函数的输出和输入值和其他隐藏信息或状态无关,也和由I/O设备产生的外部输出无关。
  • 该函数不能有语义上可观察的函数副作用,诸如触发事件,使输出设备输出,或更改输出值以外物件的内容等。

当然上面的定义会过于晦涩难懂,所以我简单总结一下;

  • 确定的输入,一定会有确定的输出;
  • 函数在执行过程中,不能产生副作用;

那么我们来看几个函数是否是纯函数;

案例一:

function sum(num1,num2){return num1+num2
}
  • 很明显,sum是一个纯函数;
  • 它的输出是依赖我们输入的内容,并且中间没有产生任何的副作用;

案例二:

let foo=5
function add(num){return foo+num
}
console.log(add(1))//6
foo=6
console.log(add(1))//7
  • add函数不是一共纯函数;
  • 函数依赖一共外部的变量,变量发生改变时,会影响确定的输入,产生确定的输出;
  • 能够改成纯函数呢?const foo=2即可;

案例三:

function printInfo(info){console.log(info.name,info.age)info.name="德玛西亚"
}
  • printInfo不是一个纯函数;
  • 虽然无论输入什么,最终输出的结果都是undefined,但是它产生了副作用,修改了传入的对象;

当然纯函数还有很多的变种,但是我们只需要理解它的核心就可以了。

为什么纯函数在函数式编程中非常重要呢?

  • 因为你可以安心的写安心的用
  • 你在写的时候保证了函数的纯度,只是实现自己的业务逻辑即可,不需要关心传入的内容或者依赖其他的外部变量;
  • 你在用的时候,你确定你的输入内容不会被任意的篡改,并且自己确定的输入,一定会有确定的输出;

React中就要求我们无论是函数还是class生命一共组件,这个组件都必须像纯函数一样,保护它们的props不被修改;
在之后的学习redux中,reducer也被要求是一个纯函数。

1.2为什么需要redux?

JavaScript开发的应用程序,已经变的越来越复杂了;

  • JavaScript需要管理的状态越来越多,越来越复杂;
  • 这些状态包括服务器返回的数据、缓存数据、用户操作产生的数据等,也包括一些UI的状态,比如某些元素是否被选中,是否显示加载动效,当前分页;

管理不断变化state是非常困难的;

  • 状态之间会存在相互依赖,一个状态的变化会引起另一个状态的变化,View界面也可能会引起状态的变化;
  • 当前应用程序复杂时,state在什么时候,因为什么原因发生了变化,发生了怎么样的变化,会变得非常难以控制和追踪;

React是在视图层帮助我们解决了DOM的渲染过程,但是State依然留给我们自己来管理;

  • 无论是组件自己定义的state,还是组件之间的通信通过props传递;也包括通过Context进行数据之间的共享;
  • React主要负责帮助我们管理视图,state如何维护最终还是我们自己来决定;

UI = render(state)react的思想

Redux就是一个帮助我们管理State的容器,ReduxJavaScript的状态容器,提供了可预测的状态管理;
Redux除了和React一起使用外,它也可以和其他界面库一起来使用(比如Vue),并且它非常小(包括依赖在内,只有2kb);

1.3Redux的核心概念

Redux的核心理念非常简单;

比如我们有一个朋友列表需要管理;

  • 如果我们没有定义统一的规范来操作这段数据,那么整个数据的变化就是无法跟踪的;
  • 比如页面某处通过products.push的方式增加了一条数据;
  • 比如同一个界面通过products[0].age=25修改了一条数据;
  • 整个应用程序错综复杂,当出现bug时,很难跟踪到底是哪里发生的变化;
const initState={friends:[{name:'张三',age:18},{name:'李四',age:20},{name:'王五',age:24}]
}

Redux要求我们通过action来更新数据;

  • 所有数据的变化,必须通过派发dispatch(action)来更新;
  • action是一个普通的JavaScript对象,用来描述这次更新的typecontent

比如下面就是几个更新friendsaction

  • 强制使用action的好处是可以清晰的知道数据到底发生了什么变化,所有的数据变化都是可追踪、可预测的;
  • 当然,目前我们action是固定的对象,真实应用中,我们会通过函数来定义,返回一个action对象;
const action1={type:"ADD_FRIEND",info:{name:"lucy",age:18}}
const action2={type:"INC_AGE",index:0}
const action3={type:"CHANGE_NAME",playload:{index:0,newName:"小明"}}

但是如何将stateaction联系到一起呢?答案就是reducer

  • reducer是一个纯函数;
  • reducer做的事情就是将传入的stateaction结合起来生成一个新的state
function reducer (state=initState,action){switch(action.type){case "ADD_FRIEND":return {...state,friends:[...state.friends,actioin.info]}case "INC_AGE":let arr=state.friends.map((item,index)=>{if(index===action.index){return {...item,age:item.age+1}}return item})return {...state,friends:arr}case "CHANGE_NAME":let arr=state.friends.map((item,index)=>{if(index===action.index){return {...item,name:action.newName}}return item})return {...state,friends:arr}default:return state;}
}

1.4Redux的三大原则

单一数据源
整个应用中的state被存储在一棵object tree中,并且这个object tree只存储在一个store中;

  • Redux并没有强制让我们不能够创建多个Store,但是那样做并不利于数据的维护;
  • 单一的数据源可以让整个应用程序的state变得方便维护、追踪、修改;

state是只读的
唯一修改的方法一定是触发action,不要试图在其他任何地方通过任何方式来修改state

  • 这样就确保了View或网络请求都不能直接修改state,它们只能够通过action来描述自己想要如何修改state
  • 这样就可以保证所有的修改都被集中化处理,并且按照严格的顺序来执行,所以不需要担心race condition(竞态)的问题;

使用纯函数来执行修改
通过reducer 旧的stateaction联系在一起,并且返回一个新的State;

  • 随着应用程序的复杂度增加,我们可以将reducer拆分成多个小的reducers,分别操作不同的state tree的一部分;
  • 但是所有的reducer都应该是纯函数,不能产生任何的副作用;

2.Redux的基本使用

2.1Redux使用过程

安装Redux

npm install redux --save
# 或
yarn add redux

这里,我通过创建一个简单的js文件,来简单学习一下Redux

搭建项目结构
1.创建一个新的项目文件夹:Redux-learn

# 执行初始化操作
yarn init# 安装redux
yarn add redux

2.创建src目录,并且创建index.js文件

  • 暂时没有内容

3.修改package.json,可以执行index.js

"scripts": {"start": "node src/index.js"
}

开始在index.js中编写代码
1.创建一个对象,作为我们要保存的状态

const redux=reqire("redux")
const initState={counter:0
}

2.创建Store来存储这个state

  • 创建store时必须创建reducer
  • 我们可通过store.getState()来获取当前的state
//创建reducer
function reducer(state=initState,action){return state
}
//根据reducer创建store
const store=redux.createStore(reducer)
console.log(store.getState())//{counter:0}

3.通过action来修改state

  • 通过dispatch来派发action
  • 通常action中都会有type属性,也可以携带其他的数据
store.dispatch({type: "INCREMENT"
})store.dispath({type: "DECREMENT"
})store.dispatch({type: "ADD_NUMBER",number: 5
})

4.修改reducer中的处理代码

  • 这里一定要记住reducer是一个纯函数,不需要直接修改state
  • 后面会说直接修改state带来的问题
const reducer = (state = initialState, action) => {switch (action.type) {case "INCREMENT":return {...state, counter: state.counter + 1};case "DECREMENT":return {...state, counter: state.counter - 1};case "ADD_NUMBER":return {...state, counter: state.counter + action.number}default: return state;}
}

5.在派发action之前,监听store的变化;

store.subscribe(() => {console.log(store.getState());
})

完整的案例代码如下

const redux = require("redux");function add() {return {type: "add",speed: 2,};
}function reduce() {return {type: "reduce",speed: 1,};
}const initState = {counter: 9,
};function reducer(state = initState, action) {switch (action.type) {case 'add':return {...state,counter:state.counter+action.speed}case 'reduce':return {...state,counter:state.counter-action.speed}default:return state}
}let store = redux.createStore(reducer);store.subscribe(()=>{console.log(store.getState());
})setTimeout(() => {store.dispatch(add(2))
}, 2000);
setTimeout(() => {store.dispatch(reduce(1))
}, 6500);

2.2Redux结构划分

如果我们将所有的逻辑代码写到一起,那么当Redux变得复杂的时候就难以维护。
接下来,我会对代码进行拆分,将storereduceractionconstants拆分成一个个的文件;

注意:node中对ES6的支持
目前我使用的node版本是12.18.3,从node v13.2.0开始,node才对模块化提供了支持;

  • node v13.2.0之前需要进行如下操作
    • package.json添加属性:"type":"module"
    • 在执行命令中添加如下选项:node --experimental-modules src/index.js
  • node v13.2.0之前需要进行如下操作
    • package.json中添加属性"type":"module"

注意:导入文件时,需要跟上**.js**后缀名

对Redux进行拆分
1.创建store/index.js文件

import redux from 'redux'
import reducer from './reducer.js'let store =redux.createStore(reducer)export default store

2.创建store/reducer.js文件

  • 2.1不拆分
    import {ADD,REDUCE,PUSHARR,POPARR}from './constants.js'
    const initState={counter:1,arr:[111,222,333]
    }function reducer(state=initState,action){switch (action.type) {case ADD:return {...state,counter:state.counter+action.speed}case REDUCE:return {...state,counter:state.counter-action.speed}case PUSHARR:state.arr.push(...action.arr)return {...state,arr:[...state.arr]}case POPARR:state.arr.pop()return {...state,arr:[...state.arr]}default:return state}
    }
    export default reducer
    
  • 2.2拆分
    import {ADD,REDUCE,PUSHARR,POPARR}from './constants.js'
    import redux from "redux"
    const initState={counter:1,arr:[111,222,333]
    }function reducerAddReduce(state=initState,action){switch (action.type) {case ADD:return {...state,counter:state.counter+action.speed}case REDUCE:return {...state,counter:state.counter-action.speed}default:return state}
    }function reducerArr(state=initState,action){switch (action.type) {case PUSHARR:state.arr.push(...action.arr)return {...state,arr:[...state.arr]}case POPARR:state.arr.pop()return {...state,arr:[...state.arr]}default:return state}
    }let reducer =redux.combineReducers({changeCounter:reducerAddReduce,changeArr:reducerArr
    })
    export default reducer
    

3.创建store/actionCreate.js文件

import { ADD, REDUCE, PUSHARR, POPARR } from "./constants.js";function add(speed) {return {type: ADD,speed,};
}
function reduce(speed) {return {type: REDUCE,speed,};
}
function pushArr(arr) {return {type: PUSHARR,arr,};
}
function popArr() {return {type: POPARR,};
}export { add, reduce, pushArr, popArr };

4.创建store/constants.js文件

const ADD = "ADD";
const REDUCE = "REDUCE";
const PUSHARR = "PUSHARR";
const POPARR = "POPARR";export { ADD, REDUCE, PUSHARR, POPARR };

5.在src/index.js文件中使用

import store from './store/index.js'
import {add,reduce,pushArr,popArr} from './store/actionCreators.js'store.subscribe(()=>{
console.log(store.getState());
//不拆分reducer打印的示例:{ counter: 2, arr: [ 111, 222, 333, 444, 555 ] }
//拆分reuder打印示例:{//changeCounter: { counter: 2, arr: [ 111, 222, 333, 444, 555 ] },//changeArr: { counter: 1, arr: [ 111, 222, 333, 444 ] }
//}
})
setTimeout(() => {store.dispatch(add(2))
}, 1000);
setTimeout(() => {store.dispatch(reduce(1))
}, 2000);
setTimeout(() => {store.dispatch(pushArr([444,555]))
}, 3000);
setTimeout(() => {store.dispatch(popArr())
}, 3000);

6.运行
yarn start

2.3Redux流程图

我们已经知道了Redux的基本使用过程,那么我们就更加清晰的认识一下Redux在实际开发中的流程;

  • 1.全局通常只有一个Store,存储我们的State
  • 2.Component中在某些情况去会派发Action(这些action都是提前定义好的)
  • 3.reducer会接收到这些action,并且在reducer中会返回一个新的State,作为StoreState
  • 4.State发生更新之后会触发通知,告知订阅者数据发生了改变;
  • 5.订阅者拿到最新的数据(props)中,更新到jsx中,界面改变
查看全文
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

相关文章

  1. 浅谈二叉树(c语言)

    #include <stdio.h> #include <stdlib.h> typedef struct Treenode* Bintree; typedef Bintree Position; struct Treenode { int date; struct Treenode* left; struct Treenode* right; }; //二叉树的遍历 //1.先序遍历&#xff1a;遇到根节点先打印出来&…...

    2024/4/23 9:41:42
  2. 论文阅读 (39):Multi-instance Domain Adaptation for Vaccine Adverse Event Detection (泛读)

    文章目录引入引入 题目&#xff1a;[疫苗不良事件检测的多示例域自适应 (Multi-instance domain adaptation for vaccine adverse event detection)]   代码&#xff1a;   摘要&#xff1a;检测疫苗不良事件对于发现和改进有问题的疫苗至关重要。为了实现这一目标&#xf…...

    2024/4/14 4:05:55
  3. Flutter,Android,java现在又来了个国产鸿蒙,android应用开发入门课后答案

    鸿蒙开发者官网&#xff1a;developer.harmonyos.com/cn/home 鸿蒙应用开发文档&#xff1a;developer.harmonyos.c om/cn/docs/doc… 鸿蒙API文档&#xff1a;developer.harmonyos.com/cn/docs/doc… 真正的鸿蒙SDK API在 ohos.jar &#xff0c;可以结合 鸿蒙API文档 查看。…...

    2024/4/21 15:37:49
  4. 深度学习入门

    一&#xff0c;浅谈深入学习 在学习深入学习之前&#xff0c;就不得不谈一下人工智能和机器学习&#xff0c;至于原因&#xff1a; 人工智能>机器学习>深入学习 人工智能更多指的是一个目标&#xff0c;而机器学习是为了实现这个目标而开发出了一类方法&#xff0c;深入学…...

    2024/4/23 9:40:21
  5. 【Mysql】【高级篇】【第4章 Mysql逻辑架构】【02】SQL执行流程

    SQL执行流程1. Mysql中的SQL执行流程&#xff08;1&#xff09;查询缓存&#xff08;2&#xff09;解析器&#xff08;3&#xff09;优化器&#xff08;4&#xff09;执行器2. Mysql8中SQL执行原理2.1 确认profiling是否开启2.2 多次执行相同SQL查询2.3 查看profiles2.4 查看pr…...

    2024/4/23 9:42:36
  6. 动画的基本使用

    —— animation调用 目录 定义及语法 动画的调用 重点注意 常用属性 调用速写 典型例子 波点效果 放映图标效果 打字机及循环移动效果 定义及语法 使用&#xff1a;用keyframes定义动画&#xff0c;属于CSS3范畴&#xff1b; 格式&#xff1a; keyframes 动画名称 …...

    2024/4/7 18:22:23
  7. MPP数据库之Doris(2):Doris之Broker编译

    目录 0. 相关文章链接 1. Doris中的Broker是什么 2. 前置准备 3. Broker编译 0. 相关文章链接 大数据基础知识点 文章汇总 1. Doris中的Broker是什么 Broker 是 Doris 集群中一种可选进程&#xff0c;主要用于支持 Doris 读写远端存储上的文件和目录&#xff0c;如 HDFS、…...

    2024/4/15 18:26:15
  8. Android-关键文件-资源文件

    应用资源概览 | Android 开发者 | Android Developers...

    2024/4/14 2:42:24
  9. 2022年全球市场纸浆模塑包装总体规模、主要生产商、主要地区、产品和应用细分研究报告

    本文研究全球市场、主要地区和主要国家纸浆模塑包装的销量、销售收入等&#xff0c;同时也重点分析全球范围内主要厂商&#xff08;品牌&#xff09;竞争态势&#xff0c;纸浆模塑包装销量、价格、收入和市场份额等。针对过去五年&#xff08;2017-2021&#xff09;年的历史情况…...

    2024/4/14 0:19:48
  10. 关于:Windows 7 中的 NTFS 高级应用(旧作)

    目录 1、高效、节省的硬链接 2、记录文件信息的数据流 3、文件变动信息的变动日志...

    2024/4/15 18:50:17
  11. Flutter图表库fl_chart的使用解析(二)-折线图,flutter项目源码

    一 基本集成 折线图是一个 Widget&#xff0c;和普通 Widget一样声明即可&#xff1a; LineChart( sampleData(), ), LineChart的构造参数是一个LineChartData&#xff0c;其属性如下&#xff1a; 属性名称描述默认值lineBarsData图表要展示的线的数组&#xff0c;数组的每…...

    2024/4/20 16:13:34
  12. Java基础语法——选择排序、冒泡排序以及二分查找法和Arrays类的使用

    本文将带你了解选择排序、冒泡排序以及二分查找法的原理和代码实现&#xff0c;以及通过Arrays类快速实现对数组的一些操作 文章目录一、选择排序二、冒泡排序三、二分查找法四、Arrays类&#xff08;对数组的操作&#xff09;1.对数组进行升序排序2.判断两个数组是否相等3.将数…...

    2024/4/28 2:42:25
  13. 2021-2027中国食品级酒精市场现状研究分析与发展前景预测报告

    【报告篇幅】&#xff1a;92 【报告图表数】&#xff1a;129 【报告出版时间】&#xff1a;2021年12月 报告摘要 2021年中国食品级酒精市场销售收入达到了 万元&#xff0c;预计2028年可以达到 万元&#xff0c;2022-2028期间年复合增长率(CAGR)为 %。中国市场核心厂商包括Ar…...

    2024/5/1 6:12:40
  14. HTML+PHP+Mysql登录注册页面

    一、PHP开发 登录页面 1.数据库搭建 先在mysql数据库中创建一个test数据库login表&#xff1a; 设置如下几个字段&#xff1a; id : 它是唯一的&#xff0c;类型为 int &#xff0c;并选择主键。 uesrname : 用户名&#xff0c;类型为 varchar&#xff0c; 长度为30。 pa…...

    2024/5/6 23:54:46
  15. BigDecimal解决浮点数运算精度丢失问题

    《阿里巴巴 Java 开发手册》中提到&#xff1a;“为了避免精度丢失&#xff0c;可以使用 BigDecimal 来进行浮点数的运算”。 这篇文章&#xff0c;我就简单解释一下浮点数运算出现精度丢失的原因以及 BigDecimal 的常见用法&#xff0c;希望对大家有帮助&#xff01; BigDec…...

    2024/4/29 19:55:37
  16. [MySQL进阶]——事务日志1

    笔记整理自 【宋红康】MySQL数据库&#xff08;mysql安装/基础/高级/优化&#xff09;&#xff0c;并从《MySQL实战45讲》作为补充 文章目录redo日志如何保证持久性&#xff1f;redo日志格式Mini-Transaction以组的形式写入redo日志如何划分组&#xff1f;Mini-Transaction概念…...

    2024/4/14 0:20:13
  17. 数组的常用方法

    reduce arr.reduce(callback(accumulator, currentValue[, index[, array]])[, initialValue])arr.reduce((pre, item)>{// pre 上一次的值// item 当前项目return xx // 这个返回值作为下一次的上一次的值 }, 0)1.第一个参数&#xff1a; callback函数 执行数组中每个值 …...

    2024/4/28 2:41:56
  18. Java序列化简述

    一&#xff1a;概述 简单来说就是&#xff1a;保存(持久化)对象及其状态到内存或者磁盘 出现原因&#xff1a;Java 平台允许我们在内存中创建可复用的 Java 对象&#xff0c;但一般情况下&#xff0c;只有当 JVM 处于运行时&#xff0c;这些对象才可能存在&#xff0c;即&…...

    2024/4/20 0:04:58
  19. Flutter UI自动化测试技术方案选型与探索,安卓内存优化管理器

    最早接触flutter自动化测试时&#xff0c;先尝试使用appium框架去驱动APP&#xff0c;当我们使用inspect功能去dump页面元素时发现很多元素会被合并成一个区域块&#xff0c;然后点击的时候只能通过xpath定位&#xff0c;想定位到某些具体的元素会比较困难&#xff0c;并且xpat…...

    2024/4/14 0:19:38
  20. VS2019(社区版)无法安装ClaudiaIDE

    使用VS2019&#xff0c;在扩展->管理扩展中搜索插件时&#xff0c;却发现只能搜到Color Theme Editor而搜不到ClaudiaIDE. 不过&#xff0c;我们可以在github找到该插件并下载&#xff1a; 地址&#xff1a;https://github.com/buchizo/ClaudiaIDE/tree/master 解决方案&am…...

    2024/4/14 0:19:53

最新文章

  1. 【Osek网络管理测试】[TG3_TC7]Bus-off恢复后的第一帧NM报文

    &#x1f64b;‍♂️ 【Osek网络管理测试】系列&#x1f481;‍♂️点击跳转 文章目录 1.环境搭建2.测试目的3.测试步骤4.预期结果5.测试结果 1.环境搭建 硬件&#xff1a;VN1630 软件&#xff1a;CANoe 2.测试目的 验证DUT进入Bus off恢复后是否进入LimpHome状态 3.测试…...

    2024/5/7 4:49:04
  2. 梯度消失和梯度爆炸的一些处理方法

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

    2024/5/6 9:38:23
  3. 图像处理相关知识 —— 椒盐噪声

    椒盐噪声是一种常见的图像噪声类型&#xff0c;它会在图像中随机地添加黑色&#xff08;椒&#xff09;和白色&#xff08;盐&#xff09;的像素点&#xff0c;使图像的质量降低。这种噪声模拟了在图像传感器中可能遇到的问题&#xff0c;例如损坏的像素或传输过程中的干扰。 椒…...

    2024/5/5 8:37:08
  4. Vue ts 如何给 props 中的变量指定特定类型,比如 Interface 类的

    Vue ts 如何给 props 中的变量指定特定类型&#xff0c;比如 Interface 类的 我有一个这样的变量值类型 一、在没用 ts 之前的 props 类型指定方式 我们都知道之前在没用 ts 之前的 props 变量值类型指定方式&#xff1a; 如下图&#xff0c;billFood 定义方式是这样的&…...

    2024/5/6 20:21:12
  5. 【外汇早评】美通胀数据走低,美元调整

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

    2024/5/4 23:54:56
  6. 【原油贵金属周评】原油多头拥挤,价格调整

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

    2024/5/4 23:54:56
  7. 【外汇周评】靓丽非农不及疲软通胀影响

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

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

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

    2024/5/6 9:21:00
  9. 【外汇早评】日本央行会议纪要不改日元强势

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

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

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

    2024/5/4 23:55:05
  11. 【外汇早评】美欲与伊朗重谈协议

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

    2024/5/4 23:54:56
  12. 【原油贵金属早评】波动率飙升,市场情绪动荡

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

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

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

    2024/5/4 23:54:56
  14. 【原油贵金属早评】市场情绪继续恶化,黄金上破

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

    2024/5/6 1:40:42
  15. 【外汇早评】美伊僵持,风险情绪继续升温

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

    2024/5/4 23:54:56
  16. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

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

    2024/5/4 23:55:17
  17. 氧生福地 玩美北湖(上)——为时光守候两千年

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

    2024/5/4 23:55:06
  18. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

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

    2024/5/4 23:54:56
  19. 氧生福地 玩美北湖(下)——奔跑吧骚年!

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

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

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

    2024/5/5 8:13:33
  21. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

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

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

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

    2024/5/4 23:54:58
  23. 广州械字号面膜生产厂家OEM/ODM4项须知!

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

    2024/5/6 21:42:42
  24. 械字号医用眼膜缓解用眼过度到底有无作用?

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

    2024/5/4 23:54:56
  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