Преобразовать заглавные буквы в строчные из входных данных с помощью избыточного числа в реагировать на нативный - PullRequest
0 голосов
/ 20 марта 2019

Я пытаюсь удалить все пробелы с помощью ввода. На самом деле, вход забит избыточным, всякий раз, когда есть onChangeText, он переходит к действию, а затем получает значение из подпорки.

Мне нужно удалить все пробелы после завершения ввода или после ввода. Но не смог этого достичь.

Моя форма Код:

<FormInput
    underlineColorAndroid='#2980b9'
    placeholder='Having Promo Code ? Enter here !'
    onChangeText={value => this.props.onCouponCodeChanged(value)}
    value={this.props.enteredCode}
/>

Мое действие Redux:

export const onCouponCodeChanged = (value) => {
    return {
        type: COUPON_CHANGED,
        payload: value
    }
};

Мой редуктор:

 const INITIAL_STATE = { enteredCoupon: '' }

 export default (state=INITIAL_STATE, action) => {
     switch (action.type) {
         case COUPON_CHANGED:
             return {
                 ...state,
                 enteredCoupon: action.payload,
                 errorForCoupon: ''
             };
             ...
 }

Как убрать все пробелы? когда я делаю это в действии, это делает это живо. Я просто хочу удалить, не показывая пользователям

1 Ответ

0 голосов
/ 20 марта 2019

Делайте это в своем редукторе, когда устанавливаете его в состояние

 const INITIAL_STATE = { enteredCoupon: '' }

 export default (state=INITIAL_STATE, action) => {
   switch (action.type) {
    case COUPON_CHANGED:
        return {...state, enteredCoupon: action.payload.replace(/ /g,''), errorForCoupon: 
    ''};
.....
 }

Просто убедитесь, что вы привязываете значение ввода непосредственно из состояния

Редактируйте

Если вы хотите сохранить его таким образом, то, возможно, вы хотите, чтобы пробелы удалялись только при фактическом использовании этого купона, например, если вы хотите применить выражение купона в бэкэнд-билде в json, тогда просто конвертируйте его, используята же логика, например

const transformedCoupon = coupon.replace(/ /g,'');
applyCoupon(transformedCoupon)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...