Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Импорт модуля (https://javascript.ru/forum/misc/78003-import-modulya.html)

Himmelin 12.07.2019 13:17

Импорт модуля
 
Всем бобра :)

Вчера попробовал экспортировать модуль со следующим кодом:

export default class User {
    constructor() {
        let Mass = new Array(10),
            c = Mass.length,
            counter = 0;
        for (counter; counter < c; counter++) {
            let k = Math.floor(Math.random() * 10);
            Mass.unshift(k);
        }

        this.id = Mass.toString().replace(/,/igu, "");
    }
}


Далее импортировал его в HTML-документ и попытался вывести в консоли свойство экземпляра импортированного класса:
<script type="module">
"use strict"; 
import User from "./module2.js";
let user1 = new User(); 
console.info(user1.id);
    </script>


В итоге браузеры выдают схожую ошибку:
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at file:///C:/Users/Me/Desktop/module2.js. (Reason: CORS request not http).

Как ее исправить?:help:

Rise 12.07.2019 13:31

Протокол должен быть http:, а не file:.

рони 12.07.2019 13:55

Himmelin,
как вариант ...
class User {
    constructor(length=10) {
        this.id = Array.from({length}, () => Math.floor(Math.random() * 10)).join("");
    }
}
let user = new User();
console.info(user.id);
let item = new User(3);
console.info(item.id);

Himmelin 12.07.2019 16:27

Спасибо!


Часовой пояс GMT +3, время: 14:03.