`

react 常用技术

阅读更多

react 常用技术

(1)过滤

 

/***
     * 获取当前用户信息,判断是否是应用管理员
     * @returns {*}
     */
    getCurrentUser() {
        return this.data.members.filter((item) => {
            return item.userId == window.mobileStoreConfig.userId;
        })[0];
    }

 

 

 

getDataItem(arr, id) {
        return arr.filter((item) => {
            return item.appId == id;
        })[0];
    }

 

 

export function getIconUrl(arrUrls, type) {
	let url = arrUrls.find((url) => url.imgType == type);
	if(url && url.imgUrls) {
      return url.imgUrls[0].url;
	}
	return '';
}

export function getPicUrls(arrUrls, type) {
	let url = arrUrls.find((url) => url.imgType == type);
	if(url && url.imgUrls) {
		return url.imgUrls;
	}
	return [];
}

 

 

(2)强制修改作用域

 

使用bind,类似于jQuery的proxy

 

closeOthers(userInfo){
        this.SwipeViewList.map(function(item,index) {
            if((!userInfo)||(item!=userInfo.swipeKey)){
                this.refs[item].close();
            }
        }.bind(this));

    }

 

let itemRenderer=this.itemRenderer.bind(this);

 

 

 

(3)遍历

let content=this.data.members.map(function(item,index) {
            // console.log('index:'+index)
           
            return itemRenderer(index);
        });
        if(con

 

 

 

(4)获取dom节点

引入:import React from "React";

import ReactDOM from "react-dom";

let swipeListDiv=ReactDOM.findDOMNode(this.refs.scrollDiv);
let swipeParent=swipeListDiv.childNodes[1];
        let childrenSwipeOptions=swipeParent.childNodes;

 

closeOthers(userInfo){
        this.SwipeViewList.map(function(item,index) {
            if((!userInfo)||(item!=userInfo.swipeKey)){
                this.refs[item].close();
            }
        }.bind(this));

    }

 

 (5)使用空格

不能直接使用"& n b s p ;"

let name=userInfo.name;
        if(name){
            name=omitTooLongString(name,6,true);
        }else{
            name=<span>&nbsp;</span>;
        }

 

(6)在属性上拼接字符串



 

(7)字符串中使用变量

const prefix = `${MOBILE_STORE_PROTOCOL}${MOBILE_STORE_HOST}`;

 

(8)对用户输入进行URL编码

let users = encodeURIComponent(params.users);
    let appName = encodeURIComponent(params.appName);

 

 

  • 大小: 25.4 KB
0
1
分享到:
评论

相关推荐

    react-react技术栈的综合运用

    Jest和Enzyme是常用的React测试工具,它们可以帮助我们编写单元测试和集成测试,确保代码质量。`reactSPA-master`可能包含一个`__tests__`目录,里面存放着相关的测试文件。 总的来说,“react-react技术栈的综合...

    深入REACT技术栈

    Jest和Enzyme是React应用常用的测试工具,它们可以帮助我们编写单元测试和集成测试。React DevTools则是一个强大的调试工具,能可视化组件树和状态变化。 十、社区和生态系统 React拥有庞大的开发者社区,丰富的第...

    react-react版动态简历

    7. **路由管理**:在SPA中,React Router是常用的路由库,用于处理页面跳转。在动态简历中,可能有多个路由对应不同的简历部分,如 `/about`、`/experience` 和 `/projects`。 8. **CSS预处理器**:为了提高样式...

    ReactNative常用练习

    React Native是一种由Facebook开发的开源框架,用于构建原生移动应用程序。它允许开发者使用JavaScript和React库来编写可跨平台的...在实际开发中,不断学习和实践新的技术和最佳实践,是提升React Native技能的关键。

    尚硅谷教程React视频.txt

    3. **观看尚硅谷React教程**:尚硅谷提供的React教程涵盖了从入门到精通的全过程,包括React的基本概念、常用API的使用方法、项目实战等内容。跟随教程逐步学习,可以帮助你系统地掌握React。 4. **动手实践**:理论...

    React技术栈.pptx

    Redux作为状态管理库,成为了React应用中常用的架构选择,提供了可预测的状态管理。2017年的React Fiber引入了新的调度算法,提升了React在复杂应用中的性能表现。另外,React Developer Tools、create-react-app和...

    React.zip(包含React快速入门 和 深入React)

    React采用虚拟DOM(Virtual DOM)技术,提高了性能和效率。当组件状态改变时,React会计算出最小的DOM更新,而不是直接操作实际DOM,这减少了浏览器的渲染负担。此外,React的生命周期方法如`componentDidMount`, `...

    react-一个简单的甘特图React组件封装

    在这个场景下,我们将讨论如何封装一个简单的甘特图React组件,并探讨相关的React技术和图表绘制策略。 首先,让我们了解React组件的基本概念。React组件是可重用的代码块,它们像JavaScript函数一样接收任意输入...

    React学习手册完整版带目录.zip

    React Router是常用的React路由库,用于根据URL控制组件的渲染。 8. **Redux和MobX**:React本身并不提供全局状态管理解决方案,但有Redux和MobX这样的第三方库。手册可能会对比这两者,讲解如何在React应用中实现...

    React框架课程套装.txt

    5. **React生态周边技术**:介绍与 React 相关的工具库和技术栈,如 Redux、React Router、TypeScript 等。 #### 三、React基础知识详解 1. **组件化开发**:React 最大的特点就是支持基于组件的开发模式。每个...

    React应用框架:一个使用React构建本地应用程序的框架

    在本主题中,“React应用框架”指的是利用React技术栈来构建本地桌面应用程序的方法。React.js,通常简称为React,是这个框架的核心部分,它提供了一种声明式编程方式来描述用户界面,并通过组件化思想简化了UI开发...

    pro react.pdf

    《Pro React》是一本面向中级到高级开发者的书籍,由 Cássio de Sousa Antonio 编写,旨在帮助读者深入理解 React 的核心概念和技术,并学习如何使用 React 构建复杂且可扩展的前端应用。本书涵盖了以下主要内容: ...

    react资源react资源react资源

    React Native则让React技术应用于原生移动应用开发,它允许开发者使用JavaScript和React来构建iOS和Android应用,实现了"Learn once, write anywhere"的理念。 总的来说,React是一个强大的前端框架,其丰富的生态...

    react-react入门架手架搭建reactreactrouter40redux

    React是Facebook推出的一款用于构建用户界面的JavaScript库,尤其适合构建...这是一个很好的起点,能让你熟悉现代前端开发的常用工具和技术栈。随着对这些技术的深入理解和实践,你将能够构建出更复杂的Web应用程序。

    React前端开发技术栈及Hooks使用指南

    内容概要:介绍了 React 技术栈的关键概念与工具,包括基本的函数组件与类组件,Hooks 如 useState 和 useEffect 的应用,常用高级特性如 Context API 以及第三方库(例如 Chakra UI, React Router)等,帮助开发者...

    ReactOS-0.3.3源码

    通过研究ReactOS的源代码,开发者可以了解到操作系统层面的许多关键技术,比如中断处理、系统调用、内存管理和多线程编程等。此外,这也为改进和优化操作系统,甚至创建新的操作系统提供了可能。对于那些对操作系统...

    react demo

    在"react demo"中,我们可能找到这些技术的实例,展示了如何将交互性和视觉吸引力融入到React应用中。 总的来说,"react demo"是一个全面学习React的好资源,涵盖了从基础的组件构建到高级的Hooks和动画实现。通过...

    react-解决react后台管理问题方案

    Jest和Enzyme是React开发中常用的测试工具,它们可以帮助你编写单元测试和集成测试,确保代码的功能正确无误。 最后,为了提高开发效率,使用像ESLint这样的代码风格检查工具和Prettier这样的代码格式化工具是必要...

    react-React中的动画元素组件

    本文将深入探讨如何在React中创建和使用动画元素组件,以及涉及的相关技术。 首先,React本身并不直接支持内置的动画库,但通过引入第三方库或自定义实现,可以轻松地在项目中添加动画效果。一个常用的库是`react-...

    30天学习ReactNative教程

    探索React Navigation库,它是React Native中常用的导航解决方案,用于实现页面间的跳转和堆栈管理。 8. **原生模块集成** 当需要利用特定平台的功能时,可以编写原生模块。React Native提供了桥接机制,让你能用...

Global site tag (gtag.js) - Google Analytics