在 Meteor 1.3 + angular1 上使用 npm(凹凸!)
Posted
技术标签:
【中文标题】在 Meteor 1.3 + angular1 上使用 npm(凹凸!)【英文标题】:Using npm on Meteor 1.3 + angular1 (bump!) 【发布时间】:2016-07-30 04:21:30 【问题描述】:编辑备注: 随着我的进步,我正在改变这个问题。会持续更新。
我已将我的 angular-meteor 项目(Meteor 1.2.1 + jam + ES6 js)升级到 1.3。更新成功,一切正常。我想开始使用 npm 安装 angular 插件,如下所示:
meteor npm i <package>
作为第一步,我已经安装了 angular 和 angular-meteor:
meteor npm i angular --save
meteor npm i angular-meteor --save
然后补充:
import angular from 'angular';
import 'angular-meteor';
我在服务器端遇到了一些缺少包的错误,并通过使用npm i <package> --save
添加它们来修复这些错误
现在我遇到了:
Error: Can't find npm module 'ecmascript'. Did you forget to call 'Npm.depends' in package.js within the 'modules-runtime' package?
W20160410-21:27:53.530(3)? (STDERR) at Object.Npm.require (/Users/user/work/myproj/.meteor/local/build/programs/server/boot.js:195:17)
想法?
更新
我以为添加 ecmascript 会修复它,但安装时会发生错误。需要明确的是,我不确定是meteor add ecmascript
还是meteor npm i ecmascript
,所以分别和一起尝试了。 Nether修复了上述错误。
话虽如此,meteor add ecmascript
实际上已经停止了 ES6 错误,所以我知道它在那里并且处于活动状态
第二次更新(3 周后)
几周后等待并重试更新解决了这个问题:我运行了Meteor update
,然后运行了服务器,这反过来又出现了几次关于缺少 npm 包的错误,但在其中的[meteor] npm install
之后,一切正常一种魅力。问题解决了!
【问题讨论】:
你如何捆绑/转译你的代码?我猜你的 html 文件中有对 app.js 的引用(应该使用一些 systemjs / webpack 等异步加载),或者你错过了配置你的捆绑器 / 转译器。请提供更多信息。 我指望Meteor
捆绑和转译代码/模板。 Meteor 版本 1.2.1 完美地做到了这一点,升级到 1.3 后它也是如此。我在JS和jade中使用es6语法。升级到 Meteor 1.3 后这些仍然可以转换,但在我添加 import angular
语句后,Jade 和 ES6 语法都坏了
你能试试这个答案吗? ***.com/a/36494987/1426570
【参考方案1】:
在之前版本的 Meteor Angular 中,我们删除了 ecmascript
,如果您要迁移,请将其添加回来
meteor add ecmascript
【讨论】:
我也这么认为,但它并没有解决错误 - 请参阅更新的评论【参考方案2】:以下是对我有用的步骤: 1.流星更新 2.查看未升级的包并进行升级。具体如下所示:
以下***依赖项未更新到可用的最新版本: * 角度 1.3.7(1.3.10 可用) * angular-meteor-auth 0.2.2(1.0.2_1 可用)
以下间接依赖项的较新版本可用: * 角度流星数据 0.3.0(1.3.10 可用) * 角度模板 1.0.1(1.0.2 可用) * pbastowski:angular-babel@1.3.4
meteor npm init(并填写所有详细信息)
npm install --save angular angular-meteor
在 app.js(主应用文件)上添加了以下导入:import angular from 'angular'; (我还添加了 import angularMeteor from 'angular-meteor';,但似乎没有必要)。
我收到了一个 strict-di 错误,我通过添加 'ngInject' 修复了该错误;到那个函数(RoutingHandler)。
这使我的项目像以前一样工作(没有新的 npm 包,没有额外的导入)。
【讨论】:
以上是关于在 Meteor 1.3 + angular1 上使用 npm(凹凸!)的主要内容,如果未能解决你的问题,请参考以下文章
带有angular1.5组件meteor和ui-router的动态标题
Meteor 1.3+ 帐户 Facebook 登录 iOS 不工作
`npm install` 与 Meteor 1.3 中的 `meteor npm install` 相同吗?