草庐IT

组件状态

全部标签

javascript - React Router v4 将通过状态从搜索重定向到结果

有一个搜索组件,当有效负载返回时重定向到结果组件。希望该结果组件使用ReactRouterv4Redirect显示通过的搜索状态.我在文档中的假设是使用state:{referrer:currentLocation}可以传递一个对象。搜索exportdefaultclassSearchextendsComponent{constructor(props){super(props);this.state={searchValue:'',results:[]}this.handleKeyPress=this.handleKeyPress.bind(this);}handleKeyPress

javascript - 使用 Redux、React 和 react-router-dom 4.x 时从动态组件获取 ref

我有以下类(class)classMatchBoxextendsReact.Component{constructor(props){super(props);this.countdownHandler=null;this.showBlocker=true;this.start=this.start.bind(this);}start(){...}render(){...return(...);}};functionmapStateToProps(state){...}functionmatchDispatchToProps(dispatch){...}exportdefaultwit

javascript - 如何检查 Vuex 状态对象是否为空

我有一个处于Vuex状态的初始空对象,它从API更新。conststate={someObject:{}}如何检查模板中的对象是否为空?ThisshouldnotdisplaywhensomeObjectisempty.检查状态对象是否已设置/为空的最佳做法是什么?我是否应该一开始就设置someObject:null/undefined/false,即使它希望用新对象更新?检查getter是否有意义?exportconstsomeObject=state=>Object.getOwnPropertyNames(state.someObject).length==0?state.some

javascript - 如何使用 TypeScript 将拖动事件处理程序附加到 React 组件

我正在使用TypeScript(2.4.2)首次涉足React(15.6.1),我正在尝试创建一个组件来表示可拖动的JSON字段。这是我的组件代码:import*asReactfrom"react";interfaceJsonFieldProps{name:string;type:string;indent:number;}exportclassJsonFieldextendsReact.Component{marginStyle={'text-indent':`${this.props.indent*15}px`};render(){return{this.props.name}:{

javascript - ReactJS:为什么在setState更改状态时调用构造函数

我是ReactJS的新手,我制作了一个应用程序,您可以在其中提交姓名和电子邮件。姓名和邮件应显示在页面底部的列表中。它会显示一小段时间,然后调用构造函数并清除状态和列表。为什么在状态改变后调用构造函数?我以为构造函数只运行一次,然后render方法在setState()更改状态后运行。classAppextendsReact.Component{constructor(props){super(props);console.log("Appconstructor");this.state={signedUpPeople:[]};this.signUp=this.signUp.bind(

javascript - 设置实用程序类并在 vue 组件中使用它

我正在开发的一个vue应用程序目前有很多与日期函数相关的代码冗余。为了减少这些冗余,我想创建一个如下所示的实用程序类,导入它并将其设置为组件内的Vue数据属性,这样我就可以在其中调用日期函数。我不确定实现它的最佳方式。当前的实现导致错误提示TypeError:this.datesisundefined,我的目标不仅是解决此错误,而且还使用最佳标准在Vue环境中创建/使用该类。导入工具类importDatesfrom"./utility/Dates";...组件constcontactEditView=Vue.component('contact-edit-view',{data(){r

javascript - Web 扩展中的共享 vuex 状态(死对象问题)

我正在尝试在Web扩展中使用共享的vue.js状态。状态存储在后台脚本的DOM中并呈现在弹出页面中。第一次尝试我的第一次尝试是使用一个没有vuex的简单商店:背景.jsvarstore={count:0};弹窗.jsbrowser.runtime.getBackgroundPage().then(bg=>{varstore=bg.store;varvue=newVue({el:'#app',data:{state:store},})})popup.html{{state.count}}+这在第一次打开弹出窗口时有效(您可以递增计数器并更新值)但是当第二次打开弹出窗口时,渲染失败并显示[

javascript - 在 react 中从同一文件导入多个组件而不是导入每个组件的正确方法是什么

我在一个文件中有多个组件或多个常量,如何导入所有这些组件或常量。有什么方法可以导入所有组件而不是在导入语句中提及每个组件。请引用下面的例子;`//Constants.jsexportconstvar1="something"exportconstvar2="something"exportconstvar3="something"exportconstvar4="something"exportconstvar5="something"exportconstvar6="something"exportconstvar7="something"...//App.jsimport{var1

javascript - react 中的 props.children 不能是无状态组件?

我正在尝试在React中练习渲染Prop模式,但出现了错误this.props.childrenisnotafunction这是我的代码importReactfrom'react';import{render}from'react-dom';constBox=({color})=>(thisisbox,withcolorof{color});classColoredBoxextendsReact.Component{state={color:'red'}getState(){return{color:this.state.color}}render(){returnthis.props

javascript - 如何在 Angular 5 组件中有条件地加载 templateUrl html 文件

我的项目中有一个场景,考虑一下,我有一个testDynamic组件@Component({templateUrl:"./test-dynamic.html",//NeedtooverridethisfilestyleUrls:['./test-dynamic.css']})exportclasstestDynamic{constructor(){}}这里需要检查覆盖文件夹中是否存在override1.html文件,然后加载此文件作为templateUrl,否则加载组件默认的test-dynamic.html。知道如何实现这一目标吗?引用下图可以清楚理解 最佳