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

#reactjs #video #tracking

#reactjs #Видео #отслеживание

Вопрос:

Я создал песочницу, показывающую проблему. В изолированной среде видеоплеер работает, но замена кода на приведенный ниже код не работает. Если я перемещаю src={filePa.. в <video.. , тогда он работает, но без подписи не знаю

Я пишу этот код, и он работает:

 return (
    <div className="pg-driver-view">
        <div className="video-container">
            {this.renderLoading()}
            <video
                style={{ visibility }}
                controls
                type={`video/${fileType}`}
                onCanPlay={e => this.onCanPlay(e)}
                src={filePath}
            >
                Video playback is not supported by your browser.
            </video>
            
        </div>
    </div>
);
  

Затем я пробую это, и это не работает, проигрыватель не показывает никаких предупреждений, никаких сообщений в журнале:

 return (
    <div className="pg-driver-view">
        <div className="video-container">
            {this.renderLoading()}
            <video style={{ visibility }} controls onCanPlay={e => this.onCanPlay(e)}>
                Video playback is not supported by your browser.
                <source src={filePath} type={`video/${fileType}`} />
                <track src="test_captions_en.vtt" kind="captions" srcLang="en" label="hello_english_captions" />
            </video>
        </div>
    </div>
);
  

Есть идеи?

Комментарии:

1. можете ли вы поделиться своим полным кодом компонента? потому что я пробовал в песочнице, и оба работают нормально

2. Спасибо @MohammadFaisal вот Codesandbox , показывающий, что работает. У него нет «нерабочего» кода версии, который я показываю в своем вопросе. Прокрутите вниз, и вы увидите, что видео воспроизводится нормально. Но когда я добавляю нерабочий код «из моего вопроса выше», он не работает. Извините, это большой проект, в котором много файлов…