JavaScript - необходимо дважды щелкнуть, чтобы изменить ввод и странную ошибку SW при этом (только IE 11) - PullRequest
0 голосов
/ 07 января 2019

Ввод необходимо дважды щелкнуть, чтобы его можно было редактировать. При первом нажатии я получаю эту странную ошибку от Service Worker Object 'caches' is undefined. Эта ошибка не появляется, пока я не нажму любой из входов. Когда вход размыт, эта ошибка снова появляется.

Демо: https://softec.honzachalupa.cz/ (имя пользователя: 9999, пароль: 9.9.9999)

Bug in IE's console.

Метод визуализации моего компонента ввода:

...
render() {
        const { id, additionalStyle } = this.props;
        const { value, displayValue, inputState, units, unitsSymbol, inputWidth, inputContainerWidth, isReadOnly, limitedFeatures } = this.state;

        const type = (inputState === 'edit') ? 'number' : 'text';
        const valueToBeDisplayed = (inputState === 'edit' || limitedFeatures) ? value : displayValue;

        return (
            <div className={classNames({ readonly: isReadOnly }, additionalStyle)} style={{ minWidth: `${inputContainerWidth}rem`, width: `${inputContainerWidth}rem` }}>
                {!isReadOnly &&
                    <img style={{ display: `${inputState === 'edit' ? 'none' : ''}` }} src={EditIcon} alt="" />
                }
                <input style={{ width: `${inputWidth}rem` }} name={id} type={type} value={valueToBeDisplayed} pattern="[0-9,.]*" readOnly={isReadOnly} autoComplete="off" ref={(input) => { this.input = input; }} onFocus={this.handleFocus} onBlur={this.handleBlur} onKeyDown={(e) => this.handleKeyDown(e, units)} onChange={this.handleChange} />
                <p className="units" onClick={() => { this.input.focus(); }}>{unitsSymbol}</p>
            </div>
        );
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...