У меня есть компонент молнии, и я импортирую 2 скрипта "PDF.js" и "scripts.js", мой статический ресурс имеет 3 файла zip "PDF.js", "script.js" и "worker.js"

<aura:component >
    <ltng:require scripts="{!$Resource.pdf + '/pdf.js'}"/>
    <ltng:require scripts="{!$Resource.pdf + '/script.js'}"/>

    <input id="inputFile" type="file" onchange="convertToBase64();" />    

    <div id="data"></div>   
</aura:component>

В моем статическом ресурсе script.js я называю свой worker.js

pdfjsLib.workerSrc = 'worker.js';

Но у меня ошибка

Uncaught ReferenceError: pdfjsLib is not defined throws at https://componentstudy-dev-ed.lightning.force.com/resource/1579614876000/olianiTrailhead__pdf/script.js:1:1 ReferenceError: pdfjsLib is not defined
    at script.js:1

Кто-нибудь может мне помочь?

0
Guilherme 4 Фев 2020 в 23:00

1 ответ

Вам нужно будет выбрать другую библиотеку. Помимо возможных проблем со временем, связанных с порядком загрузки скриптов, вы не можете использовать Workers любого типа в Lightning из-за API Locker.

0
sfdcfox 4 Фев 2020 в 23:14
Я понимаю вашу точку зрения, но эта библиотека предназначена не для создания PDF, а для чтения и создания читаемого текста из PDF.
 – 
Guilherme
4 Фев 2020 в 23:10
Другая половина моего ответа по-прежнему вызывает беспокойство... API Locker не позволит вам иметь сервисного работника.
 – 
sfdcfox
4 Фев 2020 в 23:14
Вы проверяли консоль разработчика на наличие ошибок? Я почти уверен, что вы должны увидеть что-то о неподдерживаемом API или что-то в этом роде в журналах.
 – 
sfdcfox
4 Фев 2020 в 23:14
На моей консоли разработчика у меня нет ошибки, а только на консоли браузера
 – 
Guilherme
4 Фев 2020 в 23:20
О службе шкафчика, у меня была эта проблема, но я решил ее, понизив версию компонента, и теперь у меня есть эта ошибка, которую я публикую
 – 
Guilherme
4 Фев 2020 в 23:34