2015-08-04 3 views
0

У меня возникли проблемы с установкой React-masonry-component в Метеор, используя космос: прокрутить. Сообщение об ошибке указывает, что совместимая версия зависимостей компонента, кладка, не найдена (по-моему, в npm). Один и тот же пакет реагирования, похоже, работает в проекте с обычным узлом, используя Webpack, поэтому я считаю, что эта проблема специфична для Meteor.Реакционно-каменная кладка в Метеор

Вот мой файл packages.json.

{ 
    "externalify": "0.1.0", 
    "react-router": "0.13.3", 
    "react-pixi": "0.6.1", 
    "radium": "0.13.4", 
    "griddle-react": "0.2.13", 
    "react-masonry-component": "1.0.1" 
} 

app.browserify.js сообщение

ReactRouter = require("react-router"); 
ReactPIXI = require("react-pixi"); 
Radium = require("radium"); 
Griddle = require("griddle-react"); 
Masonry = require("react-masonry-component"); 

Ошибка во время процесса

=> Modified -- restarting. 
npm-container: updating npm dependencies -- externalify, react-router, 
react-pixi, radium, griddle-react, masonry-layout, imagesloaded, 
react-masonry-component... 
npm ERR! Windows_NT 6.2.9200 
npm ERR! argv 
"C:\\Users\\Nick\\AppData\\Local\\.meteor\\packages\\meteor-tool\\1.1.4\\mt- os.windows.x86_32\\dev_bundle\\bin\\\\node.exe" 
"C:\\Users\\Nick\\AppData\\Local\\.meteor\\packages\\meteor-tool\\1.1.4\\mt-os.windows.x86_32\\dev_bundle\\bin\\node_modules\\npm\\bin\\npm-cli.js" 
"install" "[email protected]" 
npm ERR! node v0.10.36 
npm ERR! npm v2.7.3 
npm ERR! code ETARGET 

npm ERR! notarget No compatible version found: 
[email protected]'git+ssh://[email protected]/eiriklv/masonry.git' 
**npm ERR! notarget Valid install targets: 
npm ERR! notarget ["0.0.1","0.0.2"] 
npm ERR! notarget 
npm ERR! notarget This is most likely not a problem with npm itself. 
npm ERR! notarget In most cases you or one of your dependencies are 
requesting 
npm ERR! notarget a package version that doesn't exist. 
npm ERR! notarget 
npm ERR! notarget It was specified as a dependency of 
'react-masonry-component' 
npm ERR! notarget 


=> Errors prevented startup: 

    While building package npm-container: 
    error: couldn't install npm package 

=> Your application has errors. Waiting for file change. 
+0

Комментарий от React-масонства компонента автора, Эйрик: «Там кажется, является проблемой при попытке установить зависимости от github, а не только для npm, поскольку он пытается установить этот пакет: https://www.npmjs.com/package/masonry, который доступен в версии 0.0.1 d 0.0.2, когда необходимо установить https://github.com/eiriklv/masonry. С этой ссылкой: https://meteorhacks.com/complete-npm-integration-for-meteor кажется, что вы можете указать только пронумерованную версию, что заставляет меня думать, что поддержка npm ограничена в каком-то виде ». –

ответ

1

сборки Так как Meteorhacks: НПМ требуется конкретная версия/фиксации НПМ или GitHub модуля, Метеор сборки процесс не включал этот компонент React-Masonry, чей package.json определяет зависимость, не ссылаясь на конкретную фиксацию. Например,

"dependency": {"masonry" = "eirik/masonry"} 

Чтобы избежать этой проблемы, я раздвоенный модуль НПМ Эйрик и опубликовал версию, которая определяет все его зависимость либо конкретной версии НПМ или GitHub фиксации. Например,

"dependency": {"masonry" = "https://github.com/eirik/masonry/archive/dd74b7c6fe58e9f5de56d2ab442ac4b2d0fa5dd1.tar.gz"} 

См https://github.com/meteorhacks/npm более подробно по этому требованию.

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

packages.json

"react-masonry-component-4meteorhacks-npm": "0.0.13" 

app.browserify.js

Masonry = require("react-masonry-component-4meteorhacks-npm")(React); 
Смежные вопросы