Как создать глобальную вспомогательную функцию в react native?

как я могу создать глобальные вспомогательные функции в react-native?

Я хотел бы использовать для доступа sqlite база данных или извлечение данных с сервера. Могу ли я создать JavaScript файл с функциями и вызовите эти функции из нескольких представлений?

4 ответов


то, как мы делали это в прошлом:

  1. создайте файл, который экспортирует функцию:

    module.exports = function(variable) {    
       console.log(variable);
    }
    
  2. требовать файл, Когда вы хотите его использовать, в переменной:

    var func = require('./pathtofile');
    
  3. использовать функцию:

    func('myvariable');
    

2 стороны, не уверен, какой из них лучше:

1.

window.foo = function(val) {
   alert(val);
}
  1. (не совсем глобальный) внутри вашего class который U экспортирует и требует в необходимом файле u может определить вашу функцию, см. Это:

;

var React = require('react-native');

var {
  View,
} = React;

var styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    alignItems: 'center',
    backgroundColor: '#F5FCFF',
  }
});

var MoviesScreen = React.createClass({
  foo : function(val) {
    alert(val);
  },



render: function() {
    return (
      <View style={styles.container}>      
      </View>
    );
  },
});


module.exports = MoviesScreen;

У меня есть вспомогательная функция myfunction (foo).

Я объявляю это как: глобальный.myfunction = функция myfunction (foo) {...};


глобальная переменная

class MainActivity extends Component {

  constructor(){
     super();

     // Creating Global Variable.
     global.SampleVar = 'This is Global Variable.';
  }
}

во втором действии

class SecondActivity extends Component {

  render(){
    return(
       <View>
          <Text> {global.SampleVar} </Text>
       </View>
   );
  }
}

но если вы хотите иметь глобальная функция

export function TestFunc1() {

 }

export function TestFunc2() {

}

затем импортировать и использовать

import { TestFunc1 } from './path_to_file'