Если я попытаюсь включить внешний js-файл, содержащий только предупреждение (); вот так jQuery("#some-div").html("Бла-бла-бла" );, тогда он запускается нормально.
Но если я попытаюсь вместо этого включить внешний js-файл, содержащий alert(); сразу после импорта такие строки jQuery("#some-div").html("Бла-бла-бла"); , тогда он не запускается - почему?
В качестве теста, если я удалю эти 3 строки импорта из внешнего js, показанного ниже, то это alert(); появится, но тогда, конечно, сам код не будет работать, если не будет этих трех важных строк.
Кстати, ребята, этот alert(); на самом деле просто простой пример, позволяющий проверить, загружен/включен ли скрипт или нет, НО на самом деле внешний js Файл - это МОДУЛЬ, который должен выводить QR-код платежа в этот динамически созданный div "Бла-бла-бла" - просто чтобы прояснить ситуацию, поскольку я вижу, что вы можете ввести в заблуждение то, что я здесь делаю!
Если это поможет, вот содержимое этого фактического внешнего js-файла, который я пытаюсь заставить работать (конечно, все значения в этом примере вымышленные), то есть выводит QR-код платежа в этот app-bysquare:
ссылка на источник: github.com/xseman/bysquare/
import { CurrencyCode, encode, PaymentOptions } from "https://esm.sh/bysquare@2.7.1/";
import { html, LitElement } from "https://esm.sh/lit@3.0.0/";
import { qrcanvas } from "https://esm.sh/qrcanvas@3.1.2/";
alert();
/**
* @extends {LitElement}
*/
class Bysquare extends LitElement {
static properties = {
_qrstring: { state: true },
_ammount: { state: true },
_variable: { state: true },
_iban: { state: true }
};
constructor() {
super();
this._qrstring = "";
this._ammount = 10;
this._variable = "0026548";
this._iban = "SK9611000000002918599669";
}
firstUpdated() {
this.#generateQrstring();
}
get #canvas() {
return this.shadowRoot?.querySelector("canvas");
}
render() {
return html`
`;
}
#generateQrstring() {
alert(_test);
const qrstring = encode({
invoiceId: new Date().toLocaleDateString("sk"),
payments: [
{
type: PaymentOptions.PaymentOrder,
amount: this._ammount,
bankAccounts: [{ iban: this._iban }],
currencyCode: CurrencyCode.EUR,
variableSymbol: this._variable,
paymentNote: "Some text here"
}
]
});
this._qrstring = qrstring;
this.#setCanvas();
}
#setCanvas() {
if (this.#canvas) {
const ctx = this.#canvas.getContext("2d");
if (ctx) {
ctx.clearRect(0, 0, this.#canvas.width, this.#canvas.height);
qrcanvas({
data: this._qrstring,
canvas: this.#canvas
});
}
}
}
}
customElements.define("app-bysquare", Bysquare);
Подробнее здесь: https://stackoverflow.com/questions/786 ... ernal-js-f
Мобильная версия