微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

MobX useObserver 不处理被破坏的参数

如何解决MobX useObserver 不处理被破坏的参数

例如,当我尝试破坏 Store 的参数 uSEObserver 不工作时,我有 Store 和 App 当 Store 的标题更改时,React 不会重新渲染应用程序。但是,如果我不破坏 params 并直接使用 Store.title 作为回报,它将起作用。为什么它会这样工作以及如何解决它?

-- Store.js --

class LoginActivity : AppCompatActivity() {

    private val userviewmodel: Userviewmodel by viewmodels {
        UserviewmodelFactory((application as MyApplication).userRepository)
    }

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_login)

        btnLogin.setonClickListener {
            val email=editEmail.text.toString()
            val password=editPassword.text.toString()
           
            /**
             * code to check whether user with this email and password exists or not
             */
        }
    }
}

-- App.js-- 不工作

import { observable,action } from 'mobx'
class Store{
  @observable title = "";

  @action handleTitleChange({ target: {value} }){
     this.title = value;
  }
}

-- App2.js-- 工作

import React from 'react'
import { uSEObserver } from 'mobx-react'
import Store from 'store'

export default () => {
  const { title,handleTitleChange } = Store
  return uSEObserver(() =>{
    <input value={title} onChange={handleTitleChange}>
  })
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。