草庐IT

react-chrome-redux

全部标签

javascript - 如何防止我的功能组件使用 React memo 或 React hooks 重新渲染?

当hiddenLogo改变值时,组件被重新渲染。我希望这个组件永不重新渲染,即使它的Prop改变了。使用类组件,我可以像这样实现sCU来做到这一点:shouldComponentUpdate(){returnfalse;}但是有没有办法处理Reacthooks/React备忘录?这是我的组件的样子:importReact,{useEffect}from'react';importPropTypesfrom'prop-types';importConnectedSpringLogofrom'../../containers/ConnectedSpringLogo';import{Wrap

javascript - 使用 javascript 提交的表单只能在 Google Chrome 中使用一次

我有简单的形式。...还有一些anchor链接Doit!它在FireFox或IE中运行良好,但在GoogleChrome中运行良好。Chrome执行一次,然后链接变得不可点击。 最佳答案 也有这样的问题。决定是在每次提交之前向URL添加一些随机内容。HTML:...JavaScript(jQuery):$('#go').attr('action','go.php?'+Math.random()*1000).submit(); 关于javascript-使用javascript提交的表单只

javascript - 可以将 AngularJS 用于 Chrome 扩展的选项页面吗?

对于我的Chrome扩展程序的选项页面,我想使用Angular.js(仅用于选项页面,而不用于扩展程序的后台JS或内容脚本),但将其包含在我的页面中并执行如下操作:ShortkeysOptions...在开发工具控制台中抛出此错误并且没有任何运行:Error:Codegenerationfromstringsdisallowedforthiscontext我假设这是因为Angular正在尝试将标签写入页面或分配内联事件处理程序或运行内联JS的东西,这isnotallowedinChromeextensions,那么有什么办法解决这个问题吗?例如,我可以告诉Angular以某种方式避免使

javascript - 将casperjs的默认浏览器更改为chrome(更改user-agent字符串)

我发现casperjs的默认浏览器是safari,因为当我试图访问这个网站时https://z1.expertchoice.com使用casper并创建了一个屏幕截图。如何将默认浏览器更改为chrome? 最佳答案 CasperJS不使用Safari。事实上,它只能使用PhantomJS和SlimerJSheadless浏览器来实现自动化。因此,它也无法与Chrome一起使用。您可能正在访问一个进行用户代理检测的网站。当浏览器发出HTTP请求时,它通常包含一个名为User-Agent的请求header,其中包含用于识别浏览器和其他技

javascript - chrome 扩展中的内容脚本和背景页面之间的消息传递无法正常工作

我发布下面的代码:list.json{"manifest_version":2,"name":"Demo","description":"all_framestest","version":"1.0","background":{"scripts":["background.js"]},"content_scripts":[{"matches":["*://*/*"],"js":["content.js"],"all_frames":true}],"permissions":["tabs","*://*/*"]}背景.jschrome.tabs.onUpdated.addListene

javascript - 在 React Router 中渲染多个组件

我习惯于应用具有多个yield区域的布局,即内容区域和顶部栏标题。我想在ReactRouter中实现类似的东西。例如:应用布局:{--displayListTopBarhere--}{--displayListViewhere--}两个子组件应该接收相同的Prop。我该如何解决这个问题? 最佳答案 要传递多个组件,您可以这样做:请在此处查看文档:https://github.com/ReactTraining/react-router/blob/v3/docs/API.md#named-components

javascript - React : Given an array, 有效地以相反的顺序渲染元素

我目前以典型的React风格呈现列表。该列表作为数组属性传递,我像这样映射它:{this.props.myList.map(createListItem,this)}因此,当添加一个新元素时,它看起来像是最新的项目被添加到列表的末尾。我希望最新的项目出现在顶部。即一切都按时间倒序出现。到目前为止,我想到的两个选项是:1)反转列表,每次添加内容时创建一个新数组,并将这个反转列表作为prop传递。2)使用shift。但由于性能原因,它们都没有吸引力。我不知道Javascript支持倒序映射。我一直在尝试for循环,但一直无法让它工作。在React中以相反顺序呈现数组的惯用方法是什么?

javascript - 单元测试 react Action - browserHistory 未定义

我为我的行为编写测试,使用{browserHistory}from'react-router';当我运行测试时,导入的browserHistory由于未知原因未定义。因此,测试会抛出一个错误——“无法读取未定义的‘push’属性”;我不知道,为什么browserHistory未定义,如果它在我的应用程序中有效。有人可以帮助我吗? 最佳答案 我猜你没有使用karma或任何浏览器来运行你的测试。如果没有浏览器,对象browserHistory将是未定义的。您可能需要使用sinonstub您的浏览器历史记录。类似以下内容可能有帮助:imp

javascript - 如何在 React JS onSubmit 函数调用中传递第二个参数

代码如下importReactfrom"react";varnewForm=React.createClass({handleSubmit:function(e,text){e.preventDefault();console.log(text);},render:function(){return();})};module.exports=newForm;我想要实现的是当我提交表单时,我想要字符串“react!!!”在控制台中打印出来并防止默认事件同时发生。显然,将参数传递给“handleSubmit”函数会破坏代码。是否可以将onSubmit事件的参数传递给附加到该事件的函数?

javascript - 在 React Native 中将 props 样式添加到现有组件样式

我定义了以下组件:importReact,{Component}from'react';import{StyleSheet,TouchableOpacity,View,Text}from'react-native';exportdefaultclassButtonextendsComponent{render(){return(this.props.onPress}>{this.props.title})}}conststyles=StyleSheet.create({container:{paddingTop:15,paddingBottom:15,paddingRight:20,p