Я храню класс Bluetooth в своем магазине Redux, ожидая, что состояние обновится, когда я изменю свойство класса.
Класс:
export default class BluetoothService {
constructor() {
this.isConnected = false
this.deviceID = ""
}
connect() {
this.deviceID = "something"
this.isConnected = true
}
write() {
someLibrary.write(this.deviceID)
}
}
Вот редуктор:
export default function blueoothReducer(state = null, action) {
switch (action.type) {
case LOAD_BLUETOOH:
return new BluetoothService()
default:
return state
}
}
Я передаю его своему компоненту следующим образом:
const mapStateToProps = state => {
return {
bluetoothService: state.bluetoothService
}
}
export default connect(mapStateToProps)(Profile)
Я отправляю LOAD_BLUETOOTH
один раз при загрузке приложения.
Актуальная проблема
В моем компоненте я вызываю this.props.bluetoothService.connect()
, ожидая обновления и повторной визуализации компонента, поскольку свойство isConnected
изменилось, но компонент не обновляется.
Любые творческие способы сделатьмой компонент повторно визуализируется, когда я изменяю атрибут класса bluetooth?