NPM 对等需求错误
NPM peer requirements error
如果这是一个愚蠢的问题,我深表歉意 - 我是一个十足的 Meteor Noob...
我正在使用 meteor 1.3.1 和 Socially 教程作为参考构建一个应用程序,因为它所做的事情与我需要的非常相似,但我一直在我的控制台中看到同样的错误并且无法理解出来了。
我已经安装了 accounts.ui 软件包:
meteor add dotansimha:accounts-ui-angular
然后将该包作为依赖项添加到我的 angular 模块中:
angular.module('dkfitness', [
'angular-meteor',
'ui.router',
'angularMoment',
'accounts.ui'
]);
我安装了 angular,.meteor/versions 列出:
angular@1.3.9_2
但我一直看到以下错误:
check-npm-versions.js:17 Error: Cannot find module
'angular/package.json'(…) check-npm-versions.js:48 WARNING: npm peer
requirements not installed:- angular@^1.2.27 not installed.
我试图将 angular 的软件包版本强制为 1.2.27
我也 运行:
meteor npm install --save angular
都没有解决问题。
谁能告诉我我做错了什么?
尝试安装 angular 1.3.1。我装那个版本就解决了
这绝不是修复,而是临时解决方法。
此问题是由 npm 版本检查包依赖性引起的。
import {checkNpmVersions} from 'meteor/tmeasday:check-npm-versions';
if (!window.angular) {
require("angular");
}
checkNpmVersions({
'angular': '^1.2.27'
});
解决方法:
在您的应用程序目录中创建一个新的 "packages" 文件夹并从 github 克隆包目录 (requires Git..)
mkdir packages
cd packages
git clone https://github.com/dotansimha/accounts-ui-angular.git
在文件中packages.js更改
-- name: "dotansimha:accounts-ui-angular",
++ name: "dotansimha:accounts-ui-angular-moded",
在文件帐户-ui-angular.js中更改以下内容以删除版本检查
的行
-- import {checkNpmVersions} from 'meteor/tmeasday:check-npm-versions';
if (!window.angular) {
require("angular");
}
-- checkNpmVersions({
-- 'angular': '^1.2.27'
-- });
然后回到你的应用程序根目录,卸载原始包并安装我们刚刚修改的包。
meteor remove dotansimha:accounts-ui-angular
meteor add dotansimha:accounts-ui-angular-moded
注意,我对此很陌生(首先是 Whosebug post,哇)。我不知道为什么会出现这个问题,但这是我目前找到的唯一解决方案。希望这对您有所帮助,希望官方软件包 / meteor 能尽快得到修复!
请确保您安装了 angular 1.2.27 以上版本,因为我们不再对其进行验证。
meteor list
似乎违规代码行已从 dotansimha:dotansimha:accounts-ui-angular
中删除
但是版本号没有跳动。还是0.0.4
无论如何解决这个问题只需删除并添加包。
流星移除 dotansimha:accounts-ui-angular
流星添加 dotansimha:accounts-ui-angular
@alexbouchardd:感谢您发现这个问题。
更新:问题也是由于帐户中的这部分-ui-angular.js
- 尝试{
- 如果(包['modules-runtime']){
- var require = Package['modules-runtime'].meteorInstall();
- require('angular');
- }
- } 赶上(e){
- 抛出新错误('angular package is missing');
- }
将此处的代码还原为早期版本
- if (!window.angular) {
- require("angular");
- }
按照 alexbouchardd 的步骤克隆和替换 dotansimha:dotansimha:accounts-ui-angular
如果这是一个愚蠢的问题,我深表歉意 - 我是一个十足的 Meteor Noob...
我正在使用 meteor 1.3.1 和 Socially 教程作为参考构建一个应用程序,因为它所做的事情与我需要的非常相似,但我一直在我的控制台中看到同样的错误并且无法理解出来了。
我已经安装了 accounts.ui 软件包:
meteor add dotansimha:accounts-ui-angular
然后将该包作为依赖项添加到我的 angular 模块中:
angular.module('dkfitness', [
'angular-meteor',
'ui.router',
'angularMoment',
'accounts.ui'
]);
我安装了 angular,.meteor/versions 列出:
angular@1.3.9_2
但我一直看到以下错误:
check-npm-versions.js:17 Error: Cannot find module
'angular/package.json'(…) check-npm-versions.js:48 WARNING: npm peer
requirements not installed:- angular@^1.2.27 not installed.
我试图将 angular 的软件包版本强制为 1.2.27 我也 运行:
meteor npm install --save angular
都没有解决问题。 谁能告诉我我做错了什么?
尝试安装 angular 1.3.1。我装那个版本就解决了
这绝不是修复,而是临时解决方法。
此问题是由 npm 版本检查包依赖性引起的。
import {checkNpmVersions} from 'meteor/tmeasday:check-npm-versions';
if (!window.angular) {
require("angular");
}
checkNpmVersions({
'angular': '^1.2.27'
});
解决方法:
在您的应用程序目录中创建一个新的 "packages" 文件夹并从 github 克隆包目录 (requires Git..)
mkdir packages cd packages git clone https://github.com/dotansimha/accounts-ui-angular.git
在文件中packages.js更改
-- name: "dotansimha:accounts-ui-angular", ++ name: "dotansimha:accounts-ui-angular-moded",
在文件帐户-ui-angular.js中更改以下内容以删除版本检查
的行-- import {checkNpmVersions} from 'meteor/tmeasday:check-npm-versions'; if (!window.angular) { require("angular"); } -- checkNpmVersions({ -- 'angular': '^1.2.27' -- });
然后回到你的应用程序根目录,卸载原始包并安装我们刚刚修改的包。
meteor remove dotansimha:accounts-ui-angular meteor add dotansimha:accounts-ui-angular-moded
注意,我对此很陌生(首先是 Whosebug post,哇)。我不知道为什么会出现这个问题,但这是我目前找到的唯一解决方案。希望这对您有所帮助,希望官方软件包 / meteor 能尽快得到修复!
请确保您安装了 angular 1.2.27 以上版本,因为我们不再对其进行验证。
meteor list
似乎违规代码行已从 dotansimha:dotansimha:accounts-ui-angular
中删除但是版本号没有跳动。还是0.0.4
无论如何解决这个问题只需删除并添加包。 流星移除 dotansimha:accounts-ui-angular 流星添加 dotansimha:accounts-ui-angular
@alexbouchardd:感谢您发现这个问题。
更新:问题也是由于帐户中的这部分-ui-angular.js
- 尝试{
- 如果(包['modules-runtime']){
- var require = Package['modules-runtime'].meteorInstall();
- require('angular');
- }
- } 赶上(e){
- 抛出新错误('angular package is missing');
- }
将此处的代码还原为早期版本
- if (!window.angular) {
- require("angular");
- }
按照 alexbouchardd 的步骤克隆和替换 dotansimha:dotansimha:accounts-ui-angular