使用 AngularJS 和 MeteorJS
Posted
技术标签:
【中文标题】使用 AngularJS 和 MeteorJS【英文标题】:Using AngularJS with MeteorJS 【发布时间】:2012-10-20 11:47:00 【问题描述】:所以我对这两种技术都很陌生。我的计划是使用 MeteorJS 实现他们使用 Backbone (https://github.com/philipkobernik/backbone-tunes) 制作的 Peepcode Tunes 项目,然后尝试使用带有 AngularJS 插件的 MeteorJS 来实现它。有人已经在 Angular 中完成了这一切:https://github.com/angular/peepcode-tunes
大部分事情都进行得很顺利。您可以在以下位置查看我目前拥有的内容:
只是流星:https://github.com/Jonovono/Meteor-peepcode-tunes Meteor 和 AngularJs:https://github.com/Jonovono/Meteor-angular-peepcode-tunes
我真的很喜欢使用 Angular 并能够从视图中传递一些东西,例如:
ng-click="pl.add(album)">
仅使用 Meteor 时似乎更复杂。
但是我有一个问题。假设我想在每次添加/删除专辑时保存播放列表。因此,如果页面被刷新,它仍然存在。我不知道做到这一点的最佳方法,当使用 AngularJS 和 Meteor 时,我很困惑应该如何做到这一点。
现在在使用 Angular 和 Meteor 时,我会这样做:
$scope.Playlist = new Meteor.AngularCollection("playlist", $scope);
$scope.playlist = $scope.Playlist.findOne();
$scope.pl.add = function(album)
if ($scope.playlist.indexOf(album) != -1) return;
$scope.playlist.push(album);
$scope.playlist.$save();
;
但是,这似乎并没有将其保存到数据库中。但如果我要这样做:
album.title = "CHANGED"
album.$save()
它似乎会将它保存到数据库中。
我确信我只是错过了一些关于 Meteor 或 AngularJS 添加到它的小东西。任何启示都会很棒!
【问题讨论】:
【参考方案1】:这里是桥梁的创造者。你是从 github 上拉最新版本的吗?我还没有更新关于气氛的版本。对不起。 .findOne 需要一些额外的代码,今晚会推送它。
https://github.com/lvbreda/Meteor_angularjs
【讨论】:
甜蜜。我会尽快检查的。谢谢你把它放在一起。我发现它对学习 Angular 和 Meteor 很有帮助! @Jonovono findOne 已添加,请查看 github 页面和示例,如果您有更多问题,请提出。 非常感谢。我刚试了一下,没有做任何更改,现在出现错误 运行$scope.Albums = new Meteor.AngularCollection("albums", $scope); $scope.albums = $scope.Albums.find();
时无法在浏览器控制台中调用未定义的方法 'find' 也许我应该把它放在 Github 上,但这是我的项目:@987654322 @ .我会继续尝试,但马上就用完了。
您好,您可以通过不在客户端执行 new Meteor.collection 来修复此错误。我确实已针对该问题进行了修复。
太棒了!似乎正在工作!非常感谢。以后我可能会有更多问题,所以在 github 上见。【参考方案2】:
这里是新桥的创建者:)
由于不再维护旧桥,我们的团队编写并积极维护这个库 - angular-meteor,我们还发布了将两者结合起来的教程 - angular-meteor tutorial
很想听听你的想法!
【讨论】:
【参考方案3】:你可以像 Uri 提到的那样使用角流星 + 你可以看到更多可用的角度模块 angular modules
【讨论】:
以上是关于使用 AngularJS 和 MeteorJS的主要内容,如果未能解决你的问题,请参考以下文章