【问题标题】:JQueryUI at Ember upgradeEmber 升级时的 JQueryUI
【发布时间】:2018-08-09 11:46:51
【问题描述】:

按照建议升级并关闭 Bower 后:有没有办法在不使用 Bower 的情况下将 JQueryUI 包含到 Ember 项目中?我的项目很大程度上依赖于 JQueryUI 对话框。

$ ember -v
ember-cli: 3.3.0  
node: 8.11.3  
os: linux x64  

我必须在我的项目中重新引入 Bower 吗?喜欢这个旧的Using jquery in Ember-cli 建议?

【问题讨论】:

  • 希望有人有经验或至少有一些想法/提示...... Bower 将得到支持多长时间?
  • 随着 Ember 3 的发布,Bower 不再是默认应用蓝图的一部分。但是因为 Bower 的导入要简单得多,所以您应该可以在需要时使用它。也就是说,随着对 Ember 应用程序进行 tree-shaking 的能力在未来变得越来越现实,使用 Bower 库可能会对您造成一些不利影响,因为 Ember-CLI 可能必须将您的 Bower 库包含为全局模块,即使您只在一个小地方使用它...

标签: jquery-ui ember.js npm bower ember.js-3


【解决方案1】:

这能解决您的用例吗?:

ember install ember-auto-import
npm install jquery-ui

然后在你需要的地方使用它:

import { stuff } from 'jquery-ui';

【讨论】:

  • 很好的提示 - 这可能是一个选择,但我会尝试与 Bower 一起生存下去,因为我已经完成了升级并且没有直接的问题。很高兴看到人们在此类或附近的问题上工作!下次可能有帮助!非常感谢!
  • 如何使用它来导入jquery ui draggable 方法?
  • 我不能肯定地说,但我假设你会导入这个:github.com/jquery/jquery-ui/blob/master/ui/widgets/draggable.jsimport draggable from 'jquery-ui/ui/widgets/draggable';我不使用 jquery(ui),所以我完全猜到了。
  • @NullVoxPopuli 是的,但是我的文件有 this.$().draggable(...) 这样的代码,所以导入的可拖动对象并不是我的文件真正使用的可拖动对象,对吧?
  • 我相信是的。看起来 jquery-ui 是猴子修补以前加载的行为以添加可拖动。 .draggable 目前有效吗?
【解决方案2】:

始终建议通过npm package 包含外部js。上面的答案显示了如何做到这一点。

有时开发人员不会维护包。在这种情况下,您必须手动包含它才能为您的应用获取最新的 js。

如果你想手动包含它(不依赖于 npm 包),这里是在你的应用程序中添加外部 js 的方法

1) 从他们的官方site 下载最新的稳定版jquery-ui

2) 提取它。在您的app/vendor/jquery-ui.js 中包含jquery-ui.js 文件

vendor 是外部 js 的家)

3) 添加后在ember-cli-build.js 文件中导入js

app.import('vendor/jquery-ui.js');

4) 重启 ember 应用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-06
    • 1970-01-01
    • 2015-04-12
    • 2013-09-22
    • 1970-01-01
    • 2019-07-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多