Почему я не могу использовать класс из связанного файла веб-пакета? - PullRequest
0 голосов
/ 26 мая 2019

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

class Rorke {
    constructor(x, y) {
        this.x = x;
        this.y = y;
    }
}

В моем webpack.config.js:

module.exports = {
  entry: "./src/rorke.js",
  output: {
    filename: "rorke.bundle.js"
  }
}

Мой пакет.json:

{
  "name": "rorke-3.0",
  "version": "1.0.0",
  "description": "",
  "main": "./src/rorke.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "bundle": "webpack ./src/rorke.js dist/rorke.bundle.js"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "webpack": "^4.32.2"
  },
  "dependencies": {
    "pixi.js": "^5.0.3",
    "prototype": "0.0.5"
  }
}

Итак, я бегу:

npm run bundle

И выводит файл связки. Затем я включаю этот файл так:

<html>
  <body>
    <script src="dist/rorke.bundle.js"></script>
    <script src="game.js"></script>
  </body>
</html>

И, наконец, это моя игра. Js:

const game = new Rorke(800, 600);

Поэтому, когда я открываю HTML-файл, он говорит мне:

Рорке не определен

Кто-нибудь знает, почему это так? Что я тут делаю не так / не понимаю?

Ответы [ 2 ]

0 голосов
/ 26 мая 2019

Разработка веб-сайта на самом деле просто означает создание файла HTML, файла CSS и файла JavaScript (или иногда они объединяются, или CSS и JavaScript, или объединяются, и т. Д.).Это просто файлы, обслуживаемые через веб-сервер по запросу.

Я думаю, что одной из основных причин использования веб-пакета является следование инструкциям require / import, которые преобразуют клиентский код, разбросанный по нескольким файлам, в один пакет.Инструменты разработки веб-интерфейса, такие как веб-пакет, позволяют создавать эти файлы как отдельные компоненты.

Rorke, вероятно, находится в комплекте.Итак, начните с файла index.js, потребуйте / импортируйте ваш класс, а затем используйте этот класс.Затем измените корень вашего веб-пакета на index.Js.

0 голосов
/ 26 мая 2019

Все, что вам нужно, находится в документации Webpack: Создание библиотек / Предоставление библиотеки

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...