避免在服务器端路由上使用全局 onBeforeAction 方法
Avoiding global onBeforeAction methods on a server side route
我有一个用于Facebook共享的服务器端路由(因为它现在需要一个URL)
this.route('share',{
path: '/share',
where: 'server'
}).get(function(data){
var query = data.query;
this.response.write('<html>');
this.response.write('<head>');
// content type is text/html by default
this.response.write('<title></title>');
if(query){
for(var prop in query){
if(query.hasOwnProperty(prop)){
this.response.write('<meta property="'+prop+'" content="'+query[prop]+'" />');
}
}
}
this.response.write('</head>');
this.response.write('<body></body>');
this.response.write('</html>');
this.response.end();
});
但是我的全局Router.onBeforeAction()
函数仍然被调用,它使用jQuery(动画) - 这会导致服务器端出现问题。
有没有办法跳过全局钩子,或者我应该只检查是否定义了 jQuery?
根据 iron:router 指南,你应该使用 except 选项声明你的全局 onBeforeAction 钩子:
Router.onBeforeAction(yourGlobalHook, {
except: ['share']
});
相关文章:
- 全局变量和全局对象的属性之间有什么区别吗
- 正在全局范围中查找JavaScript函数
- delete关键字在全局变量上的不同行为
- 在javascript函数中设置全局变量
- 如何将getJson的响应保存在全局变量中
- 全局对象是属于哪个类的对象
- Javascript全局onclick监听器
- 从Javascript方法返回全局变量
- 访问jsrender模板中的全局javascript变量并更新它
- javascript无法重新定义函数内部的全局对象
- javascript 中的全局函数
- cordova:例外:财产'requestFileSystem'的[对象全局]不是函数
- 全局安装gull后出错
- AngularJS中的封装窗口全局变量
- 全局标志仅与第一个匹配项匹配的Regexp
- javascript隐式全局变量
- Javascript-在哪里放置常量,全局或本地
- 如何从onclick函数设置全局变量并将其传递给另一个JS文件
- Javascript,从静态函数中打印全局对象
- AngularJS智能表全局配置实现