如何在Ember中检测浏览器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在Ember中检测浏览器相关的知识,希望对你有一定的参考价值。

Ember有内置的方法来检测浏览器吗?如果使用这个library(bowser),这样的东西

    if (bowser.msie) {
        ...
    } else if (bowser.gecko) {
        ...
    } else if (bowser.webkit) {
        ...
    }

或者,我可以只是npm install bowser,然后导入它并在Ember中使用它

答案

我想在ember中没有任何内置方法来检测浏览器AFAIK。通常这种工作将被委托给ember插件,如果没有满足你的要求,可以尝试ember-browser-checker然后你可以考虑像你找到bowser的任何npm / bower库。

另一答案

我实施了一点browsercheck as service意识到这不安全,但适用于简单的需求

另一答案

Ember UserAgent是一个Ember插件,它提供了userAgent服务,可以轻松检测浏览器,设备,操作系统等。

它适用于浏览器和Fastboot环境,并且非常简单:

const userAgent = this.get('userAgent');

userAgent.get('browser.isChrome'); // Boolean
userAgent.get('engine.isWebKit'); // Boolean
userAgent.get('os.info'); // => { name: 'Ubuntu', version: '11.10' }
userAgent.getDevice(); // => { model: 'iPhone 7', type: 'mobile', vendor: 'Apple'}

以上是关于如何在Ember中检测浏览器的主要内容,如果未能解决你的问题,请参考以下文章

如何使用模块化代码片段中的LeakCanary检测内存泄漏?

如何检查加载了哪个版本的Ember.js?

十条实用的jQuery代码片段

基于机器学习的恶意样本静态检测的代码详解(ember)

Ember.js - 使用 Handlebars 助手检测子视图是不是已呈现

Ember CLI 代码覆盖率报告