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

wordpress 管理员密码优化落实防控措施

wordpress 管理员密码,优化落实防控措施,网站被降权的表现,网站建设报价明细Vue、React和Angular是三个流行的前端框架,采用组件化的开发方式。支持虚拟DOM(Virtual DOM)技术,有丰富的生态系统、大量的插件和工具可以使用。Vue的语法是传统的HTML和JavaScript,React使用JSX语法,Angu…

Vue、React和Angular是三个流行的前端框架,采用组件化的开发方式。支持虚拟DOM(Virtual DOM)技术,有丰富的生态系统、大量的插件和工具可以使用。Vue的语法是传统的HTML和JavaScript,React使用JSX语法,Angular使用了TypeScript。Vue和React使用的是响应式数据绑定机制,即数据变化会自动更新视图,Angular使用的是双向数据绑定机制,即视图和数据之间可以互相同步变化。Vue和React是轻量级的框架,只关注视图层;Angular是完整的MVC框架,提供了更多的功能和约束,Vue和React比较适合中小型项目,Angular更适合中大型项目,但这只是建议,读者可以根据项目需求和个人喜好,选择适合的框架。本文主要介绍React 的基础知识。

一、 React特点,优缺点

特点:

  1. 组件化:React通过将UI分解为独立的可重用组件来构建复杂的用户界面。每个组件都有自己的状态和属性,可以独立地进行开发、测试和维护。

  2. 虚拟DOM:React使用虚拟DOM(Virtual DOM)来管理用户界面的更新。虚拟DOM是一个轻量级的JavaScript对象树,它与实际DOM保持同步,并且只在需要更新时才更新实际DOM,以提高性能。

  3. 单向数据流:React采用单向数据流的数据模型,即数据从父组件传递到子组件,子组件不能直接修改父组件的数据。这样可以更好地管理和跟踪数据的变化。

  4. 高性能:由于使用虚拟DOM和精确的DOM更新算法,React能够提供出色的性能。它只更新需要更改的部分,而不是整个界面,从而减少了不必要的DOM操作。

优点:

  1. 组件化开发使代码更易于维护和重用,提高开发效率。
  2. 虚拟DOM的使用减少了对实际DOM操作的频率,提高了性能。
  3. 单向数据流使数据的变化更易于追踪和调试。

缺点:

  1. 学习曲线较陡峭,对于初学者来说可能需要一些时间来熟悉其概念和使用方法。
  2. React仅关注于用户界面的构建,对于其他方面(如路由、状态管理等)需要结合其他库或框架来使用。

二、组件概念,特点

React 中的组件是用来封装可重用代码的基本单元。组件可以是函数式组件或类组件,并且可以通过组合其他组件来创建更大的组件。

组件的特点如下:

  1. 可组合性:组件可以通过嵌套和组合的方式来创建更复杂的组件,这使得代码更具有模块化和可重用性。
  2. 可重用性:组件可以在应用程序的不同部分进行重复使用,从而减少了重复编写代码的工作量。
  3. 可维护性:组件可以独立进行开发、测试和维护,使代码的维护更加容易。
  4. 单一职责:每个组件应该只关注一项功能,并且应该尽可能地小而简单。
  5. 状态管理:组件可以通过状态(state)来保存和管理数据,并且可以通过 props 属性向子组件传递数据。
  6. 视图渲染:组件可以根据状态的变化,自动更新视图,使用户界面保持与数据同步。

总之,组件是 React 中非常重要的概念,它们使得构建复杂的用户界面变得更加简单和可维护。通过将应用程序拆分为多个组件,我们可以提高代码的可读性和可重用性,并且更容易进行维护和扩展。

三、简单组件制作实例

1、创建项目

使用vite创建React项目,此项目执行环境为Window 10系统,执行下列命令前必须选安装 nodejs模块,具体方法可以查询其它文章。

首先在Window 10上打开命令行窗口,改变当前目录在您所在的练习目录下,例如,练习目录为'“d:\data"目录。输入命令:

d:  回车

cd data  回车

创建项目命令如下:

npm  create vite  my-app   回车,选择React和Javascript

cd  my-app  回车

npm install  回车

npm  run   dev  回车 (项目启动)

在浏览器中的地址栏中输入"http://localhost:5173",出现如下效果,即是项目初始化成功。

2、编写简单组件

用以下代码二覆盖App.jsx,代码如下:

import React,{ Component }from 'react';class App extends Component {render() {return (<div><h1>Hello, React!</h1><p>This is a simple React component.</p></div>);}
}export default App;

这是一个名为App的React组件,它在这里作为应用的主组件。它继承自React.Component类,并实现了一个render方法。render方法返回了一个JSX元素,包含一个<h1>标题和一个<p>段落。最后,通过export default语句,将该组件导出以供其他组件使用。

四、 复杂组件示例

此示例是 一个简易的BBS的项目,在这个项目中有两个组件,一个是PostList,用于展示BBS的帖子列表,另外一个是PostItem组件,用于展示BBS帖子,PostList使用PostItem组件,这样两者就形成了父子关系。最终效果如下所示:

1、设计思路

React 应用组件设计的一般思路是,通过定义少数有状态的组件管理整个应用状态的变化 ,并且将状态通过props传递给其余无状态组件,由无状态组件完成界面绝大部分UI的渲染工作。总之,有状态组件主要关注状态变化的业务逻辑,无状态组件主要关注组件UI渲染。

根据设计思路,可以将:

PostList组件设计为一介有状态组件,负责帖子列表数据的获取及点赞行为的处理,主要设计为一个继承Component的组件类,使用数据posts存储帖子数据,handleVote函数负责处理点赞行为,具体代码如下:

import React, { Component } from 'react';
import './PostList.css';
import PortItem from './PostItem';
class PostList extends Component {  constructor(props) {super(props);this.state = {posts:[]};this.timer=null;//定义定时器this.handleVote=this.handleVote.bind(this);//绑定this     }componentDidMount(){this.timer=setTimeout(()=>{this.setState({posts:[{id:1,title:'大家一起讨论吧',author:'张三',date:'2017-09-01 10:00',vote:0},{id:2, title:'今天天气不错',author:'李四',date:'2017-09-01 10:00',vote:0},{ id:3,title:'明天天气不错',author:'王五',date:'2017-09-01 10:00',vote:0}]});},1000)}componentWillUnmount(){if(this.timer){clearTimeout(this.timer);}}handleVote(id){//根据帖子id找到对应帖子,并修改vote值const posts=this.state.posts.map(item=>{const newItem=item.id===id ? {...item,vote:item.vote+1}:item;return newItem;   });//使用新的帖子数组更新state this.setState({posts});   }render() {return (<div className='container'><h2>帖子列表:</h2> <ul>{this.state.posts.map(item=><PortItem  post={item} onVote={this.handleVote} key={item.id}          />)}</ul></div>);  }
}export default PostList;

,PostItem组件设计为一个无状态组件,只负责每一个帖子的展示,内部有一个状态变量vote记录每个帖子的点赞数,主要设计为组件函数,根据PostList传递的post属性渲染UI,当发生点赞行为时,调用props.onVote方法将点赞逻辑交给PostList中的handleVote方法处理。代码如下:

//PortItem.jsx
import  React from 'react';
import './PostItem.css';function PostItem(props){const handleClick=()=>{props.onVote(props.post.id);}const { post }=propsreturn (<li className='item'><div className='title'>{post.title}</div><div className='author'>创建人:<span>{post.author}</span></div><div>创建时间:<span>{post.date}</span></div><div className='like'><button onClick={handleClick}>点赞</button>&nbsp;<span>{post.vote}</span></div></li>);
}export default PostItem;

本文从React基本知识说起,简要说明了React的特点和优缺点,组件概念和特点,简单组件的编写,最后以一简化的BBS项目讲述了组件的设计原则和技术细节。

http://www.khdw.cn/news/28031.html

相关文章:

  • 公众号做视频网站吗深圳广告公司排名
  • 吕子乔做网站吹的语录百度号码认证申诉平台
  • 装修公司经营范围武汉seo排名公司
  • 测评网站怎么做霸屏推广
  • 微信网站开发教程seo优化在线诊断
  • wordpress frp穿透北京度seo排名
  • 能看的网站软文营销文案
  • 中国东凤网站制作seo搜索优化公司
  • 电脑软件和网站怎么做网络策划方案
  • 济宁网站建设第一品牌企业培训课程价格
  • 网站前置审批证书软文广告营销
  • java做网站开发成本高网址大全2345
  • 公司要招个做网站的人灰色行业seo大神
  • 常见的网站开发语言产品软文范例大全
  • 酒吧dj做歌网站seo薪酬水平
  • 做网站推销自己的产品这可行吗湖南靠谱seo优化
  • 手机免费建立网站吗营销公司
  • 网站建设 石家庄武汉seo公司排名
  • 做针对国外的网站微信小程序免费制作平台
  • 宁国网站设计公司b2b网站源码
  • 做网站如何赚流量钱全网营销策划公司
  • 怎么查找网站死链seo优化总结
  • 汕头建设局网站网页优化怎么做
  • 河南工程建设信息网站培训学校机构
  • 长沙网站建站关键词歌曲
  • 于都网站建设上海网站建设seo
  • 专业的网站建设商家最新新闻实时新闻
  • 响应式网站如何做的今日刚刚发生的重大新闻
  • 大型网站制作都有哪些公司网站如何推广
  • 网站专题怎么做seo培训多少钱