如何在React Native中两个单独的类之间运行方法。
例如:
头等舱
export default class Test1 extends Component {
testMethod(){
// ...
}
render() {
...
}
}
二等舱
export default class Test2 extends Component {
componentWillMount(){
Test1.testMethod();
}
render() {
...
}
}
答案 0 :(得分:2)
您的testMethod应该在类之外,如下所示
export const testMethod = () => {
// ...
}
export default class Test1 extends Component {
render() {
...
}
}
如果要修改Test1类的对象属性,可以将它们作为testMethod()的参数传递,更改将被重新执行
答案 1 :(得分:0)
这是一种简单的方法...
export default class CommonDataManager {
static myInstance = null;
_userID = "";
/**
* @returns {CommonDataManager}
*/
static getInstance() {
if (CommonDataManager.myInstance == null) {
CommonDataManager.myInstance = new CommonDataManager();
}
return this.myInstance;
}
getUserID() {
return this._userID;
}
setUserID(id) {
this._userID = id;
}
}
这是使用方法...
import CommonDataManager from './CommonDataManager';
// When storing data.
let commonData = CommonDataManager.getInstance();
commonData.setUserID("User1");
// When retrieving stored data.
let commonData = CommonDataManager.getInstance();
let userId = commonData.getUserID();
console.log(userId);
希望这对您有用:)