草庐IT

React-redux

全部标签

javascript - React navigation didfocus 事件监听器在类组件和功能组件之间的工作方式不同

当我转换到此屏幕时,它会执行一些API调用以获取最新数据。但是当我从另一个带有钩子(Hook)版本的导航堆栈转换时,它似乎不会触发didFocus事件来触发api调用,而它与类版本一起工作。如何使hooks版本与class版本具有相同的行为?这两个版本有什么区别?类组件版本classsomeScreenextendsComponent{componentDidMount(){const{navigation,}=this.props;this.navFocusListener=navigation.addListener('didFocus',()=>{//dosomeAPIcalls

javascript - 如何在多页面网站(非 SPA)中使用 react.js?

我有一个laravel应用程序。对于具有此类路由的页面:/admin/entity/我想使用带有React路由器的React组件来处理/admin/entity/:id路由。如果我使用browserify将所有组件捆绑在一个文件中,我将无法访问任何组件以从外部呈现它,因为browserify将其包装到闭包中。因此,我有几个问题:我应该为每个页面创建单独的bundle.js文件并在该文件中显式渲染组件吗?或者我应该将每个组件从jsx预编译为js并从*.blade.php文件内联渲染它将React库包含到bundle.js是否有意义,或者我可以从View中显式加载它?

javascript - 从 Redux reducer 发出事件

我在一个简单的射击游戏中使用redux作为状态容器。状态是完全确定的,系统接收的唯一输入是用户输入(例如,开火等)。我的问题是我必须跟踪(和处理)游戏中发生的某些事件(例如某些东西被摧毁等),我不太确定该怎么做。我目前的解决方案是,reducer在当前状态下维护一个events数组,每个reducer只是将事件附加到它。FIRE_WEAPON+-+FIRE_WEAPON+-+||||+-v--------+--------------v------------->||+->PLAYER_DESTROYED这里reduce接收到两个FIRE_WEAPONAction,并且应该“发射”一个

javascript - 如何将带有静态 Assets 的 React 组件发布到 npm?

我正在开发一个React组件,我想将它发布到npm,但我找不到关于如何与组件一起分发静态Assets(如css和图像)的任何最佳实践。好吧,当然,所有源代码都应该转换为纯js和纯css。在js的情况下,一切都很简单——用户只需使用他正在使用的任何bundler来要求它。但在css的情况下,它很棘手。我不想使用内联样式,因为我希望组件易于定制(通过css覆盖)。所以,我想唯一的方法是让用户将css文件从node_modules复制到他需要的地方(或者用SASS或任何其他预处理器导入它)。但是,如果我的css文件引用了其他静态资源(如图像、字体等)怎么办?我猜这些路径将完全困惑。所以,我对

javascript - react native : Android: Cannot generate signed APK

Executionfailedfortask':app:packageRelease'.Failedtoreadkeymy-key-aliasfromstore"/Users/MichaelLeung/GHRepos/MyApp/android/app/my-release-key.keystore":Keystorewastamperedwith,orpasswordwasincorrect我确定我的密码是正确的;我已经多次完成Facebook在ReactNative文档中列出的步骤。 最佳答案 因此,如果您尝试生成已签名的APK

javascript - 使用 react-router 处理 firebase 身份验证

我正在使用webpack构建React+Redux+Firebase应用程序,并试图找出处理protected路由和重定向的最佳方法。我已经尝试将onEnter()与setTimeout()一起使用,就像许多示例所示,但它仍然在重定向之前闪烁备用组件。这是我目前拥有的,我正在尝试提出一个更优雅的解决方案。这主要是有效的,但失败的一个例子是,如果我在/profile上并在浏览器中导航到/。似乎是因为firebase.auth()需要再次初始化,所以我在HomePage组件切换到Profile之前闪了一下。Firebase在firebaseClientConfig中初始化,我将fireba

javascript - react 路由器不在服务器上重定向

我有一个高阶组件,用于检查用户是否经过身份验证,如果没有,将重定向到不同的url。它是一个同构应用程序,可以在客户端运行,但如果我关闭JS,服务器不会重定向。if(!this.props.authenticated){this.context.router.push('/');}我可以在服务器上点击这条语句,this.context.router正在返回,但没有任何反应。完整组件:importReact,{Component,PropTypes}from'react';import{connect}from'react-redux';exportdefaultfunction(Comp

javascript - 为什么在 React Native 中 react-native-image-picker 的 showImagePicker 未定义?

目前我正在通过终端和Atom编辑器运行我的ReactNative项目。我正在尝试使用https://github.com/marcshilling/react-native-image-picker中的rect-native-image-picker并按照说明进行安装:npminstallreact-native-image-picker@latest--save我的依赖项显示:"react-native-image-picker":"^0.22.8"然后我尝试按照确切的示例进行操作,但当我按下按钮进行选择时,ImagePicker.showImagePicker(options,(r

javascript - ReactJS + 终极版 : How to wait until dispatch has been completed before moving onto next step?

在ReactJS+Redux项目中,我有一个方法可以发出API请求。如果成功,我想dispatch另一个Action创建者并等待它完成。然后当它完成时,进入下一步。目前,以下代码在进行另一个API调用时执行调度,但即使在通过调度更新状态之前,它也会立即执行window.location.href='http://localhost:3005/#/Home'然后调度完成。那么在执行下一行代码window.location.href='http://localhost:3005/#/Home'?这是Action创建者:loggingIn(userInfo){varuserInfoBody=

javascript - 可以在 React Native 中检测到 View 组件的触摸吗?

我的Reactnative应用程序屏幕包含带有少量文本输入的View组件。如何在该View外的屏幕上检测到触摸?请帮忙。谢谢 最佳答案 作为安德鲁said:您可以使用TouchableWithoutFeedback包装您的View,并添加一个可以检测何时点击View的onPress。另一种实现方式是响应来自view的触摸事件./*Methodsthathandledtheevents*/handlePressIn(event){//Dostuffwhentheviewistouched}handlePressOut(event){/