如何从@ember/jquery导入jQuery

How to import jQuery from @ember/jquery

我正在尝试在我的组件中导入 @ember/jquery

我已经安装了 @ember/jquery@ember/optional-features 并导入如下

import $ from '@ember/jquery'

但我的组件出现以下错误:

error missing module @ember/jquery

这是正确的导入方式吗?

https://github.com/emberjs/ember-jquery

ember-jquery 看起来它提供 jQuery 作为导出。在我的应用程序中,我将其设置为 import $ from 'jquery';these ember-jquery tests 看起来像 import jQuery from 'jquery';

导出 jQuery 的模块名为 jquery,而不是 @ember/jquery@ember/jquerynpm package

的名称

导入jquery的正确方法是

import jQuery from 'jquery';

由于我们从 jquery 模块导入默认导出,我们可以按照我们想要的方式命名它:

import $ from 'jquery'; // this will also work and we will use `$` to reference jquery

为此,您还应该为 ember.js 应用启用 jquery-integration 可选功能。检查您的 config/optional-features.json 文件并确保它包含以下行

{
  "jquery-integration": true
}

如果 config/optional-features.json 不存在或不包含 jquery-integration: true 行,您可以 create/edit 手动或使用 cli 命令生成文件:

ember feature:enable jquery-integration

以后的围观者,如果你还想用jquery,这个也行

  • 启用/安装了ember-自动导入或绣花
  • yarn add jquery
  • import $ from 'jquery';

从 Ember 3.4.0 开始,

Setting the `jquery-integration` optional feature flag to `true`, or not providing
a setting at all, has been deprecated. You must add the `@ember/optional-
features` addon and set this feature to `false`. This warning will become an error 
in Ember 4.0.0.

有关详细信息,请参阅弃用指南:https://deprecations.emberjs.com/v3.x/#toc_optional-feature-jquery-integration

应用的正确集成方式jQuery是

ember install @ember/jquery