应用程序的结构非常简单:底部有一个搜索栏,一个列表视图和react-native-tabs.问题:如果我点击Android上的搜索栏,它会推动整个应用程序,所以我直接在键盘上看到了标签.但在iOS上,键盘覆盖整个应用程序,而不会推动任何事情.有没有办法控制它?
如果问题不明确,我很乐意分享代码/截图.
谢谢
编辑:
<View style={{flex:1, backgroundColor: '#f2f2f2'}}>
<ListView
dataSource={this.state.dataSource}
renderRow={this.renderSearchResults.bind(this)}
style={styles.listView}
/>
<KeyboardAvoidingView
style={styles.addQuestionBar}
behavior={'position'}>
<Text>
Don't see your question?
</Text>
<TouchableOpacity>
<Text>
Add it
</Text>
</TouchableOpacity>
</KeyboardAvoidingView>
</View>
Run Code Online (Sandbox Code Playgroud) 我很反应原生的css-styling ..并且有以下代码:
<Text>
<Text style={(styles.author, { textAlign: "left" })}>
{question.view_count + " views\t" + question.comment_count}
{question.comment_count > 1 || question.comment_count == 0
? " comments"
: " comment"}
</Text>
<Text style={{ textAlign: "right" }}>
{question.solution_count > 0
? question.solution_count + " solutions"
: " Solve this"}
</Text>
</Text>;
Run Code Online (Sandbox Code Playgroud)
问题是第二个"textAlign:'right'"不起作用 - 文本仍在左侧.我希望文本在同一行,但(显然)右边的第二个文本对象.
任何提示?谢谢!
我的应用程序中有很多console.log().他们中的大多数都是陷阱,所以我可以清楚地看到开发时出了什么问题.有些是记录当前时间,所以我可以检查功能执行时间.
部署到生产时,那些console.log()将在客户端的设备中运行.我可以把它们原样留下吗?它们会损害性能/内存还是可能导致一些异常或不需要的行为?
我想做什么: 我打一个fetch,给我一个API令牌来登录网络.现在我想将一个cookie(包含这个api-token)注入Webview,所以我应该自动登录.
我尝试了什么: 我设置了这样的Webview:
<WebView
source={{uri:this.state.url}}
onNavigationStateChange={this._onNavigationStateChange.bind(this.url)}
javaScriptEnabled = {true}
injectedJavaScript={this.state.cookie}
/>
Run Code Online (Sandbox Code Playgroud)
稍微高一点我设置cookie为:
cookie: 'document.cookie=\'apiToken=xxx; userId=1; expires=28799\'';
Run Code Online (Sandbox Code Playgroud)
此外,我加载了这个镀铬扩展,并在Chrome中注入了上面的线,它完美无瑕地运行..
我已经读过在加载视图后注入了javascript,但这应该仍然有效,因为我被重定向到'domain/login',它应该检测到cookie.
(我正在运行react-native 0.29)非常感谢任何帮助.
我有一个基本类:
export default class Foo extends Component{
constructor(props){}
woop(){
somethingimportanthappening..
}
}
Run Code Online (Sandbox Code Playgroud)
在另一个组件中,我像这样导入它:
import Foo from './Foo'
export default class Component2 extends Component{
constructor(props){}
randomfunction(){
Foo.woop() // FAILS
}
}
Run Code Online (Sandbox Code Playgroud)
如何从另一个组件(Component2)调用函数“woop”?Foo.woop() 不起作用..
我正在整理这个Ask/Answer应用程序,并遇到了这个障碍:
我想从navigationBar触发场景中的一个函数.与Login应用程序类似,我在NavigationBar中有一个按钮来提交答案:
RightButton(route, navigator, index, navState) {
if (route.name=='TextInputView'){
return <TouchableHighlight
underlayColor="transparent"
style={{ marginRight:13, marginTop:0}}
onPress={() => this.refs.TextInputView.submitSolution()}>
<Text style={ styles.leftNavButtonText }>Done</Text>
</TouchableHighlight>
}
Run Code Online (Sandbox Code Playgroud)
renderscene(route,navigator)看起来像这样:
if (route.name == 'TextInputView'){
return <TextInputView ref="TextInputView" navigator={navigator} {...route.passProps}/>
}
Run Code Online (Sandbox Code Playgroud)
当然在"TextInputView"组件中我有一个"submitSolution"函数......
问题是如果我在场景中并按下"完成" - 我总是得到:"undefined不是一个对象(评估'_this2.refs.TextInputView')
一如既往:感谢您的帮助
react-native ×7
javascript ×4
android ×1
console.log ×1
cookies ×1
css ×1
navigator ×1
text ×1
webview ×1