2016-05-30 24 views
5

trong ứng dụng của phản ứng-mẹ đẻ của tôi Tôi hiện đang có một lớp người dùng trong đó tôi xác định một người sử dụng hiện nay như sau:Truy cập biến tĩnh từ một lớp khác trong ứng dụng React-Native?

class User { 
    static currentUser = null; 

    //other relevant code here 

    static getCurrentUser() { 
     return currentUser; 
    } 
} 

export default User; 

Trong một lớp học khác nhau, tôi đang cố gắng để truy cập giá trị bộ CurrentUser này. Tôi không thể tìm ra cách gọi đúng chức năng này; Tôi gặp lỗi User.getCurrentUser is not a function. Tôi có nên gọi chức năng này theo một cách khác không?

var User = require('./User'); 

getInitialState: function() { 

    var user = User.getCurrentUser(); 

    return { 
     user: user 
    }; 


}, 

Trả lời

6

Bạn đang trộn import/export kiểu. Bạn có thể nên thay đổi khẩu của bạn để

var User = require('./User').default 

hoặc

import User from './User' 

Hoặc thay đổi xuất khẩu của bạn:

module.exports = User 
3

Tôi nghĩ bạn cũng quên từ khóa này sẽ hoàn lại số tĩnh Trường "currentUser":

class User { 
    constructor() {} 

    static currentUser = { 
    uname: 'xxx', 
    firstname: 'first', 
    lastname: 'last' 
    }; 

    static getCurrentUser() { 
    return this.currentUser; 
    } 
} 

console.log(User.getCurrentUser()); 
Các vấn đề liên quan