【问题标题】:Importing jQuery-dependent library in ionic 3在 ionic 3 中导入依赖于 jQuery 的库
【发布时间】:2018-05-30 22:19:41
【问题描述】:

我正在尝试将外部 JavaScript 文件(使用 jQuery)导入到我的 ionic 3 项目中。

要安装jQuery,基于this的回答,我跑了:

npm install jquery --save

然后我可以通过从我的应用程序的第一页执行$(document).ready 中的一些代码来看到 jQuery 正在工作(它可以工作)。

现在我需要包含对我的外部 jQuery 库的引用,这是我在 src/index.html 中完成的:

<script src="assets/js/myLibrary.js"></script>

myLibrary.js 通过以下方式使用 jQuery:

(function($, window, document) { 
...
})(jQuery, window, document);

但不幸的是,我从库文件中收到 jQuery is not defined 错误。

我不确定 jQuery 是否还没有准备好或其他什么,我尝试将 defer 属性添加到脚本导入但没有运气。 有什么想法吗?

【问题讨论】:

  • 我正在使用 Ionic-Angular。您的项目是否有像 src/app/main.ts 这样的主要导入文件?我的项目在这里导入和引导 platformBrowserDynamic()。
  • 它会在导入我的自定义导入之前导入 build/main.jsvendor.js 和 'polyfills.js'。

标签: javascript jquery ionic3


【解决方案1】:

您可以在您的 html 文件中执行此操作。请注意,只有在有 wifi 的情况下才能这样做。

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

【讨论】:

  • 这不是重复导入 jQuery 吗?如果我已经通过npm install jquery 告诉 ionic 拥有 jQuery,为什么我不能直接使用它?
  • 我不知道我从来没有用过我总是只使用链接或手动下载文件
【解决方案2】:

我最终将 jquery 放入 src/assets/jquery.min.js,然后在 index.html 我想要使用的依赖于 jQuery 的库之前添加了一个脚本引用:

<script src="assets/jquery.min.js" defer></script>
<script src="assets/js/myLibrary.js" defer></script

我不确定这是否是在 ionic 中执行此操作的正确方法,并且我不确定这是否会重复导入 jQuery [我已经通过 npm install jquery --save 导入了它]。

无论如何它都有效 - 仅供将来查看此线程的任何人参考。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-03-20
    • 1970-01-01
    • 1970-01-01
    • 2020-05-15
    • 1970-01-01
    • 2018-01-02
    • 2018-02-19
    相关资源
    最近更新 更多