ember.js Ember CLI将ES6文件导入到ember-cli-builds.js

polhcujo  于 2022-11-05  发布在  其他
关注(0)|答案(2)|浏览(176)

因此,ember-cli-builds.js文件明确指出

// If the library that you are including contains AMD or ES6
// modules that you would like to import into your application
// please specify an object with the list of modules as keys
// along with the exports of each module as its value.

我用这种方法导入常规javascript文件

app.import('vendor/global.js');

但是“用模块列表作为键沿着用每个模块的导出作为值来指定对象”的正确方法是什么呢?

djmepvbi

djmepvbi1#

在指南的“AMD Javascript模块”标题中,它是这样描述的:
提供资产路径作为第一个参数,提供模块和导出列表作为第二个参数。

app.import('bower_components/ic-ajax/dist/named-amd/main.js', {
  exports: {
    'ic-ajax': [
      'default',
      'defineFixture',
      'lookupFixture',
      'raw',
      'request'
    ]
  }
});

您现在可以在应用程序中import它们。(例如import { raw as icAjaxRaw } from 'ic-ajax';
参考指南

pinkon5k

pinkon5k2#

选择器答案是针对旧ember、预ember自动导入(webpack)和预ember辛烷。
在现代的ember中,在npm install一个包之后,你就可以直接从那个包导入了。
示例:

npm install qs

然后在应用程序中的任何位置

import qs from 'qs';

相关,建议避免将文件放置在要与模块系统集成的vendor文件夹中。vendor存在于软件包之外,因此如果您有一个独立的模块,您可以将其放置在app文件夹中,可能在某个描述性文件夹下:app/external-modules/global.js,允许您从其中导入如下内容:

import * as globalStuff from '<my-app>/external-modules/global';

相关问题