Ember 如何从浏览器控制台执行 Ember.version()?

How Ember does Ember.version() from browser console?

我正在研究 Javascript / Ember 并且正在研究它的源代码。 https://github.com/emberjs/ember.js/

在学习的过程中,我发现了一些有趣的东西,我想知道它是如何工作的。您可能知道,如果您在浏览器控制台中键入 Ember.VERSION,则可以获得 Ember 的版本号。我想在我的项目中做,所以我开始搜索代码 Ember 是如何做到的。

我能找到

// in packages/ember/lib/index.js
Ember.VERSION = VERSION;
...
// Later exports Ember object

但是我找不到 Ember 如何在 window(从浏览器)中使用它。我希望他们确实喜欢... window['Ember'] = Ember 或类似的东西,但我找不到任何类似的代码。

我想知道是否有人知道他们如何使 Ember 对象在 window 期间可用。非常感谢!

ember-cli-app-version addon can expose your application's name and version info. So you can put your version in your templates via an helper.

该插件还将信息注册到 Ember.libraries 以便 ember-inspector 可以理解。您可以通过以下方式访问 Ember.libraries

Ember.libraries._registry.filter(item=>{return item.name==='my-app-name';})[0].version

插件可以为您提供 package.json 信息或 git describe 结果。