小编Nad*_*bit的帖子

在React/React Native中使用构造函数与getInitialState有什么区别?

我看过两者都可以互换使用.

两者的主要用例是什么?有优点/缺点吗?这是一个更好的做法吗?

constructor reactjs react-native

581
推荐指数
4
解决办法
20万
查看次数

从react组件调用外部Javascript函数

我不确定之前是否曾经问过这个问题,或者是否有人在reactjs上遇到过同样的问题.所以场景是这样的,我有一个包含一些javascript 的index.html文件.现在在我的react组件上,我有一个只有在条件为真时才会呈现的条件.这意味着,最初当我的页面加载时,组件尚未呈现.当我切换按钮时,这是该组件被渲染的地方.该子组件需要调用我的index.html中包含的javascript方法.我该怎么做?

任何帮助是极大的赞赏.

javascript reactjs

23
推荐指数
2
解决办法
4万
查看次数

支持React Native(iOS)中的动态类型

有谁知道如何在React Native中实现对动态类型的支持?

理想情况下,我们希望在有人更改系统字体大小并执行某种类型的回调时进行侦听.

或者甚至更好,防止在某些组件上实现Font Scaling.

在此输入图像描述

react-native react-native-ios

17
推荐指数
3
解决办法
3081
查看次数

如何在React Native中本地存储不是字符串的数据

我正在寻找一种在React Native中本地存储对象和数据数组的方法.如何才能做到这一点?查看AsyncStorage的api:

static setItem(key:string,value:string,callback?:?(error:?Error)=> void)
设置key的值并在完成时调用callback,如果有则调用Error.返回Promise对象.

如何在React Native中本地存储对象和数组?

javascript local-storage reactjs react-native

14
推荐指数
1
解决办法
1万
查看次数

如何使用反应材质UI覆盖TextField组件的宽度?

我正在尝试减少该组件的宽度:

https://github.com/callemall/material-ui/blob/master/src/TextField/TextField.jsx

这是渲染方法:

  render() {

    return (
      <div>
          <div>
            <form onSubmit={this.handleSubmit}>
                <TextField
                  hintText="Email"
                  ref="email"
                /><br/>
                <TextField
                  hintText="Password"
                  type="password"
                  ref="password"
                /><br/>
              <button className="btn btn-success" onClick={this.loginCommand}><i className="fa fa-sign-in"/>{' '}Log In</button>
            </form>
          </div>
      }
      </div>
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

谢谢 !

在此输入图像描述

javascript reactive-programming reactjs material-ui

13
推荐指数
3
解决办法
3万
查看次数

React Native Twilio Android错误

我一直试图调试一段时间,但无法想出任何东西.

该应用程序使用反应原生twilio库.

一切都在iOS上运行良好,但在Android中,创建一个调用之后,我得到一个看起来像无限循环的东西,说明以下错误:

01-04 17:54:34.430 8477-8617/com.channelmobile D/PJSIP: 17:54:34.430 resolver.c !Received 109 bytes DNS response from 10.0.2.3:53 01-04 17:54:34.465 8477-9329/com.channelmobile D/PJSIP: 17:54:34.465 speex !warning: Had to discard a playback frame (your application is buggy and/or got xruns) 01-04 17:54:34.491 8477-8617/com.channelmobile D/PJSIP: 17:54:34.431 resolver.c Nameserver 10.0.2.3:53 state changed Active --> Active 01-04 17:54:34.518 8477-9329/com.channelmobile D/PJSIP: 17:54:34.518 speex !warning: Had to discard a playback frame (your application is buggy and/or got xruns) 01-04 17:54:34.523 8477-9329/com.channelmobile D/PJSIP: 17:54:34.523 speex warning: Had to …

android twilio react-native twilio-api

9
推荐指数
0
解决办法
203
查看次数

了解React Native Perf Monitor

Perf Monitor中的JSC是什么?它代表什么?另外,Perf Monitor中的两个视图级别是什么?

react-native

8
推荐指数
1
解决办法
2089
查看次数

如何使用成员变量将组件反应重构为es6类

如何使用成员变量将React组件重构为es6类它没有状态变量.为什么在运行下面的代码时,我会得到一个大的红色屏幕"无法添加属性计数器,对象不可扩展"?

'use strict';
let Dimensions = require('Dimensions');
let totalWidth = Dimensions.get('window').width;
let leftStartPoint = totalWidth * 0.1;
let componentWidth = totalWidth * 0.8;
import React, {
    AppRegistry,
  Component,
  StyleSheet,
  Text,
  TextInput,
  View
} from 'react-native';


class Login extends Component {  
  constructor(props) {
        super(props);        
        this.counter =23;
        this.state = {
            inputedNum: ''
        };        
    }    
  updateNum(aEvent) {
    this.setState((state) => {
      return {
        inputedNum: aEvent.nativeEvent.text,
      };
    });
  }  
  buttonPressed() {
    this.counter++;
    console.log(':::'+this.counter);      
  }
  render() {
    return (
        <View style={styles.container}>               
                <TextInput style={styles.numberInputStyle}
                    placeholder={'input phone number'} …
Run Code Online (Sandbox Code Playgroud)

react-native

7
推荐指数
1
解决办法
9209
查看次数

在React Native中使用默认设备应用程序打开.pdf,.docx,.xlsx等

我正在尝试使用React Native打开.pdf,.docx,.xlsx和其他类似文件。

我目前正在将文件从amazon s3存储桶下载到设备,然后尝试使用react-native-fetch-blob 在设备上打开它们android.actionViewIntent(res.path(), mimeType)

这适用于图像,但是与其他任何东西一样,我得到以下错误:

Error: No Activity found to handle Intent { act=android.intent.action.VIEW dat=file:///storage/emulated/0/Android/data/myappname/files/1475.pdf typ=application/pdf flg=0x10000000 }

编辑:对于任何想看到最终实现的实现的人(使用react-native-file-system和react-native-fetch-blob):

const fileType = fileDownloadPath.split('.').pop();
const SavePath = Platform.OS === 'ios' ? RNFS.DocumentDirectoryPath : RNFS.ExternalDirectoryPath;
const mimeType = getMimeType(fileType); // getMimeType is a method (switch statement) that returns the correct mimetype
const path = `${SavePath}/${filename}.${fileType}`;
const android = RNFetchBlob.android;

RNFS.downloadFile({
  fromUrl: url,
  toFile: path,
}).promise.then(() => {
  android.actionViewIntent(path, mimeType)
    .then((success) => {
      console.log('success: ', success)
    })
    .catch((err) …
Run Code Online (Sandbox Code Playgroud)

android react-native

6
推荐指数
1
解决办法
4160
查看次数

react-router“无法读取未定义的属性“ push”

我是新来的反应和反应路由器。

react的问题在于,在我的应用程序的某些页面上,react-router正在工作,并且出现如下错误:“无法读取未定义的属性'push'”。

我正在使用反应0.14.1

我的路由代码如下所示:

render(
<Router history={hashHistory}>
  <Route path="/" component={Loginpanel}/>
  <Route path="Index" component={Index}/>
  <Route path="Form" component={Form} />
  <Route path="Checkindex" component={Index}/>

  <Route path="Signup" component={Signup}/>
  <Route path="Admin" component={Admin}/>
  <Route path="AdminEditDetails" component={AdminEditDetails}/>
  <Route path="AdminDetails" component={AdminDetails}/>


</Router>,
document.getElementById('js-main'));
Run Code Online (Sandbox Code Playgroud)

我的组件现在是这样的:

class  App extends React.Component {

  constructor(props) {
    super(props);
    this.state= {      
      comments: AppStore.getAll();
    };
  }

  componentWillMount() {  
    var length = this.state.comments.length;
    var firstnumber = length - 4;

    if(length == 0){
      console.log("here comes");
      this.props.router.push('/');
    }
    else{
      console.log('work normally');
    }
  }

}
Run Code Online (Sandbox Code Playgroud)

谁能帮我这个?谢谢。

javascript reactjs react-router react-router-component

5
推荐指数
3
解决办法
2万
查看次数

Dart中的类构造函数语法之间的区别

我正在创建一个类,如下所示:

class Movie {
  final String title, posterPath, overview;

  Movie(this.title, this.posterPath, this.overview);

  Movie.fromJson(Map json) {
    title = json["title"];
    posterPath = json["poster_path"];
    overview = json['overview';
  }
}
Run Code Online (Sandbox Code Playgroud)

我收到一条警告,指出“必须初始化最终变量“概述”,“ posterPath”和“ 1”。每个变量周围也有警告说“标题”不能用作设置器,因为它是最终的。

当我使用这种语法编写构造函数时,警告消失了:

Movie.fromJson(Map json)
   : title = json["title"],
     posterPath = json["poster_path"],
     overview = json['overview'];
Run Code Online (Sandbox Code Playgroud)

这到底是怎么回事?

dart flutter

1
推荐指数
2
解决办法
2244
查看次数