Size: a a a

2020 March 12

SS

Serhey Shmyg in React Kyiv
Марина
class ChatsContainer extends PureComponent {
 constructor(props) {
   super(props)
   this.state = {
     refreshing: false,
     vets: [],
     user: this.props.auth,
     presenceRef: firebasefirebase.database().ref('presence/vets')
   }
 }
 componentDidMount() {
   this.fetchData()
 }
 componentDidUpdate(prevState, prevProps) {
   if (this.state.vets !== prevState.vets
     && this.props.vets.vets !== prevProps.vets.vets
   ) {
     this.updateStatus()
   }
 }
 componentWillUnmount() {
   this.removeListeners()
 }
 removeListeners = () => {
   this.state.presenceRef.off()
 }
 fetchData = () => {
   const idP = this.props.navigation.state.params.data.id
   const userID = this.props.auth.currentUserUid
   const { getLastMessageForPet, toggleAddStatus } = this.props
   const vetsKey = this.props.vets.vetsId
   getLastMessageForPet(vetsKey, idP, () => this.addStatusToUser(vetsKey))
   this.setState({vets: this.props.vets.vets})
   toggleAddStatus(idP, false, userID)
   this.updateStatus()
 }
 updateStatus = () => {
   this.state.presenceRef.on('child_added', snap => {
     consoleconsole.log(snap.key, 'snap.key')
     this.addStatusToUser(snap.key)
   })
   this.state.presenceRef.on('child_removed', snap => {
     this.addStatusToUser(snap.key, false)
   })
 }
 addStatusToUser = (userId, connected = true) => {
   const upDateUsers = this.state.vets.reduce((acc, user) => {
     if (user.id === userId) {
       user['status'] = ${connected ? 'online' : 'offline'}
     }
     return acc.concat(user)
   }, [])
   this.setState({vets: upDateUsers})
 }

 refreshingStarted = () => {
   this.setState({refreshing: true})
   this.fetchData()
   this.setState({refreshing: false})
 }...
this.props.vets.vets !== prevProps.vets.vets
що є ось це? в стейты бачу це масив, в пропсах теж масив повинен бути?
масиви порівюувати через рівність - погано, якщо вони не іммутабельні
источник

М

Марина in React Kyiv
да это массивы
источник

SS

Serhey Shmyg in React Kyiv
Порівнюй те що в них
источник

М

Марина in React Kyiv
Спасибо большое, попробую
источник

М

Марина in React Kyiv
не в этом проблема
источник

SS

Serhey Shmyg in React Kyiv
Марина
не в этом проблема
Як порівнюєш?
источник

М

Марина in React Kyiv
componentDidUpdate(prevState, prevProps) {
 if (!isEqual(prevState.vets, this.state.vets )
   && !isEqual(prevProps.vets, this.props.vets.vets )
 ) {
   this.updateStatus()
   // this.setState({vets: this.props.vets.vets})
 }
}
источник

М

Марина in React Kyiv
componentDidUpdate(prevState, prevProps) {
 for(let i = 0; i < prevState.vets.length; i++) {
   if (!isEqual(prevState.vets[i].status, this.state.vets.status )){
     this.updateStatus()
   }
 }
} все разобралась спасибо!🙏
источник
2020 March 13

I

Ihor in React Kyiv
Привет! Подскажите плз, у кого есть опыт с гугл-аналитикой. В общем, у меня есть форма поиска на Semantic UI, в ней нет required полей. На сабмит-баттон я повесил data-ga с названием ивента для гугл-аналитики. И почему-то этот ивент отрабатывает (отображается в аналитике) лишь тогда, когда пользователь заполнил все поля; мне же нужно, чтобы не было зависимости от заполненности полей. В чём может быть проблема? Кто-то сталкивался?
источник

VP

Vlad Piatkianen in React Kyiv
Ihor
Привет! Подскажите плз, у кого есть опыт с гугл-аналитикой. В общем, у меня есть форма поиска на Semantic UI, в ней нет required полей. На сабмит-баттон я повесил data-ga с названием ивента для гугл-аналитики. И почему-то этот ивент отрабатывает (отображается в аналитике) лишь тогда, когда пользователь заполнил все поля; мне же нужно, чтобы не было зависимости от заполненности полей. В чём может быть проблема? Кто-то сталкивался?
Можно попоробовать отрабатывать ивент на он клик, а не сабмит
источник

AB

Anton Bavykin in React Kyiv
посмотри шлется ли запрос когда кликаешь на кнопку в network
источник

I

Ihor in React Kyiv
Vlad Piatkianen
Можно попоробовать отрабатывать ивент на он клик, а не сабмит
вот моя реализация кнопки:
<Button
 disabled={loading}
 data-ga={"some_event"}
 >
   Search
</Button>

оно по дефолту будет вешаться на onSubmit? Как тогда на onClick его повесить?
источник

I

Ihor in React Kyiv
Anton Bavykin
посмотри шлется ли запрос когда кликаешь на кнопку в network
тенкс, сейчас гляну
источник

Е

Егор in React Kyiv
Всем, привет 👋
Кто-нибудь знает как убрать hover effect у div, с помощью dom ?
источник

AB

Anton Bavykin in React Kyiv
Егор
Всем, привет 👋
Кто-нибудь знает как убрать hover effect у div, с помощью dom ?
wat? у div нет ховера по умолчанию, или я что-то не знаю)
источник

Е

Егор in React Kyiv
я сделал свой hover effect
источник

Е

Егор in React Kyiv
мне нужно его отключать
источник

Е

Егор in React Kyiv
по определенному событию
источник

AB

Anton Bavykin in React Kyiv
ну добавь класс который отключит)
источник

V

V in React Kyiv
Егор
я сделал свой hover effect
Ховер эффект через EventListener или класс?
источник