私がmobx-reactについて知った最初のことは、 "@ observer"属性を使って状態クラスで定義されたプロパティの値を追跡することです。 これは私の下のサンプルです。"@ observer"属性は何をしますか?
//@observer cut it off
SingUp.js
import React, {Component} from 'react'
import {observer} from 'mobx-react'
class SignUp extends Component{
constructor(props){
super(props)
}
SaveUser(e){
e.preventDefault();
this.props.appState.user.username = this.username.value;
this.props.appState.user.password = this.password.value;
this.props.appState.postSaveUser();
}
render(){<form onSubmit={()=>this.SaveUser(e)}>...
フォームを送信したときに、 "SaveUser()"というフォームが呼び出され、アプリ状態の値が設定されました。 SignUpクラスの先頭に "@ observer"属性を定義していないのがわかります
ここでは状態クラスです。 AppState.js
import { observable, action} from "mobx"
import {user} from './models/user'
class AppState {
@observable user=new user;
constructor() {
}
postSaveUser(){
debugger
var asd = this.user
}
}
私は値が正確に私はそれを「サインイン」コンポーネントを設定してご覧ください「postSaveUser()」メソッドの値をチェックするときのものは、それは奇妙ですか?
「@ observer」属性で定義されたどのクラスでも割り当てられた値だけを追跡すると思っていましたが、私はそれを使用せずにデータにアクセスできますか?
素晴らしい説明..おかげ – TyForHelpDude
@TyForHelpDudeグレート!どういたしまして。 – Tholle