我正在通过反应本机代码,并在其中一个文件中找到以下代码:
#define RCTLog(...) _RCTLog(RCTLogLevelInfo, __VA_ARGS__)
#define RCTLogTrace(...) _RCTLog(RCTLogLevelTrace, __VA_ARGS__)
#define RCTLogInfo(...) _RCTLog(RCTLogLevelInfo, __VA_ARGS__)
#define RCTLogWarn(...) _RCTLog(RCTLogLevelWarning, __VA_ARGS__)
#define RCTLogError(...) _RCTLog(RCTLogLevelError, __VA_ARGS__)
Run Code Online (Sandbox Code Playgroud)
我想知道Android 是否也有类似的东西(原生反应).我尝试通过反应本机代码捕获,但找不到任何方法来执行此操作.我想知道是否有人必须为Android做这件事.
有人可以帮我这个吗?
logging reactjs react-native react-native-android react-native-ios
当我按下按钮时,它应该导航到另一个页面,它也会增加查看次数.
但我无论如何都无法理解同时实施它们.
这是我的代码:
<Button onPress={Actions.ideaOnClick}>
<Button onPress={() => this.setState({views: ++this.state.views})}>
Run Code Online (Sandbox Code Playgroud) button react-native react-native-android react-native-ios react-navigation
我正在我的React Native应用程序中实现一个单词搜索工具.我有一个MobX商店wordStore.每个文本更改都会通过setFilter操作触发数据库查询.从控制台调试输出可以看出这一切都在幕后工作.
但是,WordList一旦触发任何更新,组件似乎就会消失,即如果我设置了一个默认的过滤字符串,它会显示列表中的匹配项,但是一旦任何文本更改它就会消失.
有什么我想念的吗?奇怪的是WordList.render()即使它不可见,该方法也会被执行.
编辑:渲染数组的.toString()方法从包含组件工作正常,但奇怪的是迭代数组也显示相同的行为,在更新时消失.
包含组件:
const WordSearch = observer(class WordSearch extends React.Component {
constructor(props) {
super(props);
}
render() {
let words = wordStore.getWords(); // For debugging
return (
<View>
<TextInput
style={styles.textInput}
onChangeText={(filter) => wordStore.setFilter (filter)}
value={wordStore.filter}
/>
<Text>{words.toString()}</Text> <!-- This works -->
<View style={{flex:1}} key={wordStore.filter}> <!-- This disappears too -->
{words.map((word, i) => {
console.log ('word: '+word);
return <View style={{flex:1}} key={i}>
<Text>{word}</Text>
</View>
})}
</View>
<WordList {...this.props} /> …Run Code Online (Sandbox Code Playgroud) 我正在使用react-native-zip-archive来解压缩我的文件.
这是我的源代码.
unzip(res.path(), targetPath)
.then((path) => {
RNFS.unlink(res.path())
.then(() => {
console.log('FILE DELETED');
})
// `unlink` will throw an error, if the item to unlink does not exist
.catch((err) => {
console.log(err.message);
});
})
.catch((error) => {
});
Run Code Online (Sandbox Code Playgroud)
Zip文件是235MB.提取它需要大约30分钟.反正有提高提取速度吗?
谢谢你的时间.
似乎edgePadding在fitToCoordinates函数中没有做任何事情.无论我设置哪个值,结果总是相同的.我尝试将顶部,右侧,左下角设置为0,300,将它们彼此更改...... mapview始终相同.
<MapView
ref={(ref) => { this.mapRef = ref }}
onLayout = { () => this.mapRef.fitToCoordinates([{longitude: x, latitude: y}], { edgePadding: { top: 0, right: 0, bottom: 120, left: 0 }, animated: false })}
/>
Run Code Online (Sandbox Code Playgroud)
我希望能够从给定的坐标缩小一点.在给定区域中没有LongitudeDelta或LatitudeDelta,因此我假设必须使用edgePadding参数进行缩小.
你以前遇到过这个问题吗?
react-native react-native-android react-native-ios react-native-maps
如果我尝试从XCode运行我的react-native应用程序,xcode将失败并显示以下消息:
当前部署目标不支持-fobjc-weak
如果我从shell运行react-native run-ios,那么我也会收到一条错误消息:
**建筑失败**
以下构建命令失败:CompileC /Users/michel/Development/Androdev/Firebase/Sample/FlightLogIos/ios/build/Build/Intermediates.noindex/Pods.build/Debug-iphonesimulator/nanopb.build/Objects-normal/x86_64/ nanopb-dummy.o Target\Support\Files/nanopb/nanopb-dummy.m normal x86_64 objective-c com.apple.compilers.llvm.clang.1_0.compiler
(1次失败)
但是,该应用仍然运行.这很令人讨厌,因为我认为我会在某些时候为我的项目做一些Objective C代码.有人知道如何解决这个问题吗?
我有一个React Native应用程序,我想从我自己的Git repo中使用一个React Native版本,而不是从NPM上发布.
对于Android,上游RN文档中有一些相当清晰的说明.我成功地按照这些说明进行了一个小型测试应用程序,它运行良好.我可以在RN repo的克隆中对RN代码进行更改,然后重新运行react-native run-android,几秒钟后,我使用更新的RN代码运行应用程序.
但该文档对iOS完全保持沉默.它也必须以某种方式在iOS上这样做.我错过了什么?
在我的react-native项目中,我想更新所有依赖项,因此我运行以下命令:
1.要更新到所有软件包的新主要版本,请全局安装 npm-check-updates 软件包:
npm install -g npm-check-updates
Run Code Online (Sandbox Code Playgroud)
升级 package.json 文件中的所有版本提示:
ncu -u
运行更新:
npm update
我检查了package.json一下package-lock.jso,依赖项已更新到最新版本。
然后,我文件cd夹ios/并运行pod install,但是出现以下错误:

是的,我看到错误消息中建议运行pod repo update,我这样做了:
我也运行sudo gem install cocoapods并再次尝试pod install,但仍然遇到相同的错误。
我的 React-Native 版本是 0.63.3
我的 Pod 文件:
platform :ios, '9.0'
require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'
def add_flipper_pods!(versions = {})
versions['Flipper'] ||= '~> 0.33.1'
versions['DoubleConversion'] ||= '1.1.7'
versions['Flipper-Folly'] ||= '~> 2.1'
versions['Flipper-Glog'] ||= '0.3.6'
versions['Flipper-PeerTalk'] ||= '~> 0.0.4'
versions['Flipper-RSocket'] ||= '~> …Run Code Online (Sandbox Code Playgroud) 我正在尝试在选择器组件中设置选择器背景的样式,下图中有灰色背景。我正在尝试将其更改为白色背景并在其周围有边框。
<Picker
selectedValue={selectedProject}
onValueChange={(text) => {
setSelectedProject(text as string);
}}
style={{
width: '50%',
alignSelf: 'center',
}}
itemStyle={{
height: 200,
}}>
<Picker.Item key={'all'} label={'all'} value={'all'} />
<Picker.Item key={'all1'} label={'all1'} value={'all1'} />
<Picker.Item key={'all2'} label={'all2'} value={'all2'} />
</Picker>
Run Code Online (Sandbox Code Playgroud)
我已经尝试了一切 - 这让我觉得这是不可能的。
我尝试向组件的和中添加backgroundColour/colour属性,但这些都不起作用。styleitemStylePicker
是否可以设计这个灰色选择框的样式?
Firebase 编译错误[FIRAnalytics setScreenName ...]于RNFirebaseAnalytics.m
从0.61更新到react-native 0.64.2时
node_modules/react-native-firebase/ios/RNFirebase/analytics/RNFirebaseAnalytics.m:20:19:错误:选择器没有已知的类方法'setScreenName:screenClass:'
[FIRAnalytics setScreenName:screenName screenClass:screenClassOverriew];
Run Code Online (Sandbox Code Playgroud)
以下构建命令失败:CompileC/<PATH_TO_DERIVEDDATA>/Build/Intermediates.noindex/Pods.build/Debug-iphonesimulator/RNFirebase.build/Objects-normal/x86_64/RNFirebaseAnalytics.o /<PROJECT_PATH>/node_modules/react-native-firebase/ios/RNFirebase/analytics/RNFirebaseAnalytics.m正常 x86_64 Objective-c com.apple.compilers.llvm.clang.1_0.compiler
react-native-ios ×10
react-native ×9
ios ×3
cocoapods ×2
reactjs ×2
button ×1
javascript ×1
logging ×1
mobx ×1
mobx-react ×1
picker ×1
xcode ×1