Вам может понадобиться соответствующий загрузчик для обработки этого типа файлов. Когда я использую необязательный оператор цепочки в своем проекте create-реагировать на приложение

Я изучаю редукцию прямо сейчас, и я делал проект, в котором я выполнял аутентификацию Google oAuth. поэтому, когда я пытался использовать необязательный оператор цепочки, я получаю эту ошибку.

You may need an appropriate loader to handle this file type.
|           switch (_context.prev = _context.next) {
|             case 0:
>               result = res?.profileObj;
|               token = res.tokenId;

и вот код, который дает мне ошибку

const googleSuccess = async (res) => {
        const result = res?.profileObj;
        const token = res?.tokenId;
        try {
            dispatch({ type: AUTH, data: { result, token } });
            history.push('/');
        } catch (error) {
            console.log(error);
        }
    };

однако, если я удалю ?, ошибка исчезнет, ​​​​и все будет работать нормально.

Я использую пакет npm react-google-login, и функция googleSuccess передается в качестве реквизита компоненту GoogleLogin.

если кто-то может объяснить это мне. просто иногда значение, которое я присваиваю, может не всегда быть там, и это может привести к сбою моего приложения, и для этого, поскольку необязательный оператор цепочки не работал, я использую тернарный оператор (если значение, которое нужно присвоить, отсутствует, я просто присваивая null с помощью тернарного оператора (и я не уверен, что это нормально)). извините, если этот вопрос для новичка, я просто хотел уточнить, почему я не могу использовать ?. operator, потому что я не мог найти ответы нигде. ps: сегодня я впервые использовал оператор ?.


person Zeapherine Islary    schedule 23.05.2021    source источник


Ответы (1)


Это связано с тем, что веб-пакет не может правильно проанализировать файл из-за нового синтаксиса. Если вы выполнили настройку реагирующего приложения с нуля, используя webpack . Тогда я предлагаю вам обновить webpack. Если вы используете приложение create-react-app, вам следует обновить CRA до последней версии.

Необязательная проблема связывания Webpack

person Shyam    schedule 23.05.2021
comment
спасибо, это может быть причиной, чем. я создал его с помощью CRA неделю назад, и он должен был автоматически использовать последнюю версию. но не знаю, почему я использую версию 2.x.x в своем проекте.. - person Zeapherine Islary; 23.05.2021