我在Meteor上阅读了关于URL重写的文章,我发现Slug建议在url中使用,但我并不了解它是如何工作的。请有人解释一下。感谢。
Router.route('/blog/:slug',{
name:'blogPosts',
waitOn: function() { return Meteor.subscribe('collection'); },
data: function(){
var slug = this.params.slug;
return Collection.findOne({slug:slug});
// this is saying search the collection's slug for the passed in parameter which we're also calling "slug"
}
});
答案 0 :(得分:1)
此代码使用iron:router
包。我建议您在此处阅读该软件包的文档:https://github.com/iron-meteor/iron-router
关于此代码的作用,当用户转到localhost:3000/blog/first-post
等路线时,您发布的路线将会运行。此代码订阅名称为'collection'
的发布(即waitOn
块)。
在data
区块中,this.params.slug
将等于'first-post'
。然后,我们在集合中搜索一个slug等于'first-post'
的帖子,然后我们将其作为我们要使用的模板的数据上下文返回。
但是你应该真正阅读iron-router
文档以获得更全面的理解。