是否真的需要多次导入jQuery(和插件)?

时间:2016-03-01 08:23:13

标签: aurelia

在视图中我需要一个jQuery插件,所以我这样做:

import * as jQuery from 'jquery';
import plugin from 'path/of/plugin';

在视图B中我只需要JQuery,所以我这样做:

import * as jQuery from 'jquery';

如果我加载视图A,然后查看B,然后切换回A,插件似乎丢失了。我是否需要在每个需要它的视图上加载jQuery,还是应该从某个主要点全局导入它?如果是这样,我应该怎么做呢?

---更新---

原来插件不会丢失,这是一个捆绑/导出问题,我没有意识到我有。

尽管如此,aurelia文档似乎没有提供关于如何/何时/何时导入jQuery和各种插件的明确建议。例如,即使是jQuery本身,其他人也会像这样导入它:

import * as jQuery from 'jquery';

和其他类似的:

import $ from 'jquery';

这两种方式是否相同?

2 个答案:

答案 0 :(得分:1)

要导入jQuery,这就足够了:

import $ from 'jquery';

导入Jquery插件,取决于它导出的内容。通常,插件不会导出任何内容。所以,你只需要导入文件:

import 'path/of/plugin';
//now you can $('#something').myPluginFunction();

要了解有关导入类,函数等的更多信息,您应该阅读ES6规范以进行导入。就像@Callum Linington在评论中所说的那样。

在我看来,Aurelia没有具体的规则,也没有" Aurelia方式"进口导入机制纯粹是Javascript。

有用的链接

https://developer.mozilla.org/en/docs/web/javascript/reference/statements/import

https://babeljs.io/docs/learn-es2015/#modules

希望这有帮助!

答案 1 :(得分:0)

对于对此感兴趣的人:毕竟有一种“aurelia方式”!看看here