Я изучаю Node, но никогда раньше не использовал ES6/javascript/TypeScript, поэтому, пожалуйста, потерпите...
Я пытаюсь написать приложение nodejs на простом ES6. В следующем примере (взято из здесь)
import fs from 'fs';
export default class Animal {
constructor(name){
this.name = name ;
}
print(){
console.log('Name is :'+ this.name);
}
}
import Animal from 'path/to/Animal.js';
Мы видим, что существует два вида import
, способ require
в ES6. Один без пути (import fs from 'fs';
), а другой с путем.
Итак, мое первое замешательство заключается в том, что из здесь говорится:
Для совместимости с CommonJS и подготовки к будущим функциям относительные пути, которые не начинаются с ./ или ../, не разрешены (в ES6):
// Not allowed:
import * as foo from 'foo.mjs';
import * as foo from 'lib/foo.mjs';
Так import fs from 'fs'
прав или не прав?
Простое приложение ES6 nodejs, которое я пытаюсь написать, основано на модуле npm
, но поскольку оно почти ежедневно обновляется, я вместо этого использую его git
npm install mydepmod
Это, в свою очередь, делает его пример кода, который начинается с
import { mydepmod } from 'mydepmod'
не работает для меня. Ошибка, которую я получаю,
module.js:557
throw err;
^
Error: Cannot find module 'mydepmod'
at Function.Module._resolveFilename (module.js:555:15)
at Function.Module._load (module.js:482:25)
at Module.require (module.js:604:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (/path/to/example/the-test.js:19:21)
at Module._compile (module.js:660:30)
at Object.Module._extensions..js (module.js:671:10)
at Module.load (module.js:573:32)
at tryModuleLoad (module.js:513:12)
at Function.Module._load (module.js:505:3)
так что мой последний вопрос, как заставить его работать?
Кстати, я попробовал установить и запустить его докер (который начинается с import { mydepmod } from 'mydepmod'
) без проблем, поэтому я предполагаю, что если я сделаю npm install mydepmod
, он тоже должен работать.
В общем, как я могу заставить мой зависимый модуль git pull работать так же, как npm install
ed. Спасибо.
node module
, а другой - файл вашего проекта, вот дополнительная информация оimport
. developer.mozilla.org/en-US/docs/ Интернет/JavaScript/Справочник/ - person Cr.   schedule 31.01.2018npm install
, аgit get
. Смотрите мой OP для обновленного сообщения об ошибке, спасибо. @Кр. - person xpt   schedule 31.01.2018node_module
флодер в папке проекта, если нет этого модуля, он найдетnode_module
флодер в каталоге первого уровня до корневого каталога. Если нет, бросьте не найденную ошибку. - person Cr.   schedule 31.01.2018