我想有条件地将 useHash 的值设置为true或false。所以我创建了一个导出的函数,并在app-routing模块中调用它,就像这样
@NgModule({
imports: [ RouterModule.forRoot(routes, { preloadingStrategy: PreloadAllModules,
useHash: AppHashingStrategy() })],
exports: [ RouterModule ],
})
export function AppHashingStrategy() {
const result = window.navigator.userAgent.indexOf('MSIE') !== -1 &&
window.navigator.userAgent.indexOf('9.0') !== -1;
return result;
}
条件是如果浏览器是IE 9,那么useHash = true否则为false。这是因为我的angular2应用程序无法在IE9中运行(显示加载...并挂起)。但是当我将值useHash更改为false时,它开始正常工作。所以我想有条件地设置它的值。
但是当我这样做时,我得到错误:
调用函数'AppHashingStrategy',函数调用 不受支持。考虑使用对导出函数的引用替换函数或lambda
如何解决这个问题?
答案 0 :(得分:0)
调用函数'AppHashingStrategy',不支持函数调用。考虑使用对导出函数的引用替换函数或lambda
我知道你面临错误,因为lambda表达式不适用于IE9。 我在IE11中使用了lambda表达式并且工作正常。