Получить среднее значение в поле в поле реагировать родной - PullRequest
0 голосов
/ 08 июня 2018

Это говорит мне 'Can't find variable: gpa'

Это также говорит unresolved variable Double.Я хочу получить все значения, представленные в определенном поле и вычислить среднее значение.Среднее значение должно отображаться в окне предупреждения.Код находится в функции с именем dbtotal ниже.

class MainActivity extends Component {
    static navigationOptions =
    {
        title: 'MyGPA',
    };

    GoToSecondActivity = () =>
    {
        this.props.navigation.navigate('Second');
    };

    constructor() {
        super();

        this.state = {
            Student_Name : '',
            Semester : '',
            GPA : ''
        };

        realm = new Realm({
            schema: [{name: 'CalcGP',
                properties:
                {
                    student_id: {type: 'int',   default: 0},
                    student_name: 'string',
                    semester: 'int',
                    gpa: 'double'
                }
            }]
        });
    }

    add_Student = () => {
        realm.write(() => {
            let ID = realm.objects('CalcGP').length + 1;

            realm.create('CalcGP', {
                student_id: ID,
                student_name: this.state.Student_Name,
                semester: this.state.Semester,
                gpa : this.state.GPA,
            });
        });

        Alert.alert("Details Added Successfully.");
    };

    let mydata = realm.objects('CalcGP');

    let ds = new ListView.DataSource({rowHasChanged: (r1, r2) => r1 !== r2});

    this.state = {
        dataSource: ds.cloneWithRows(mydata),
    };
}

GoToEditActivity (student_id, student_name, semester, gpa) {
    this.props.navigation.navigate('Third', {
        ID : student_id,
        NAME : student_name,
        CLASS : semester,
        SUBJECT : gpa,
    });
}
dbtotal() {
    let cgpa: Double = realm.objects('CalcGP').avg(gpa) ;
    Alert.alert(cgpa); 
}

<TouchableOpacity onPress={this.dbtotal} activeOpacity={0.7} style={styles.button} >
     <Text style={styles.TextStyle}> CALCULATE </Text>
</TouchableOpacity>

Ответы [ 2 ]

0 голосов
/ 09 июня 2018

Это нормально работает

`let average = realm.objects ('CalcGP'). Avg ('gpa');

this.state = {aver: Alert.alert (Your CGPA is + average.toString ())}; `

0 голосов
/ 09 июня 2018

avg(gpa) должно быть avg('gpa').

И let cgpa: Double = может быть let cgpa =.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...