在视图中我需要一个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';
这两种方式是否相同?
答案 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。