Как правильно использовать require.js, чтобы требовать модуля узла? - PullRequest
0 голосов
/ 17 ноября 2018

Итак, у меня нет опыта работы с Node или require.js.Я знаю, что вопросы, подобные этому, уже были опубликованы, но, к сожалению, их решения в моем случае были бесполезны, извините.

Так что все, чего я пытаюсь достичь, - это использовать random-words Node-модуль в моем приложении (на стороне клиента).После того, как я установил его с npm install random-words, я пытаюсь использовать это:

var randomWords = require('random-words');  
console.log(randomWords());

, но безуспешно.Я пытался заставить это работать более 2 часов, читая документацию, просматривая учебные пособия, выполняя поиск по переполнению стека, но всегда получаю ошибку.Прямо сейчас я получаю этот вывод / ошибки:

Require inside of index.html executed

    Uncaught ReferenceError: module is not defined
        at index.js:338
    (anonymous) @ index.js:338

    require.js:5 Uncaught Error: Module name "node_modules/random-words" has not been loaded yet for context: _. Use require([])
    https://requirejs.org/docs/errors.html#notloaded
        at makeError (require.js:5)
        at Object.s [as require] (require.js:5)
        at requirejs (require.js:5)
        at script.js:2
        at Object.execCb (require.js:5)
        at e.check (require.js:5)
        at e.<anonymous> (require.js:5)
        at require.js:5
        at require.js:5
        at each (require.js:5)

Вот моя структура каталогов:

My App
|-- js
|   |-- script.js
|   `-- node_modules
|       `-- random-words
|           |-- tests
|           |   `-- test.js
|           |-- index.js
|           `-- package.json
|-- config.js
|-- index.html
|-- package-lock.json
`-- require.js

Мой код внутри index.html:

<script data-main='config' src='require.js'></script>
    <script>
    require(['config'], function(){
        require(['script']);
        console.log("Require inside of index.html executed");
    });
    </script>

Мой код внутри config.js:

requirejs.config({
    baseUrl: 'js',
    paths: {
        randomWords: 'node_modules/random-words/index'
    }
});

Мой код внутри script.js:

define(['randomWords'], function(){
                var randomWords = require('node_modules/random-words');
                console.log("Script.js code executed");
        });

Заранее благодарен за любой ответ / совет, я очень отчаялся и не будубыть в состоянии двигаться дальше, пока я не получу это на работу.

1 Ответ

0 голосов
/ 17 ноября 2018

Решено с помощью Browserify вместо require.js

...