gpt4 book ai didi

javascript - Ember 依赖项 "Uncaught TypeError: $(...).fitText is not a function"

转载 作者:行者123 更新时间:2023-11-30 12:14:43 27 4
gpt4 key购买 nike

我正在尝试在 Ember 项目中使用 jQuery 插件(在本例中为“fitText”)。

ember-cli-build.js(最近替换了 Brocofile...)中 - 我导入了依赖项(我已经用 bower 安装了) .

/* global require, module */
var EmberApp = require('ember-cli/lib/broccoli/ember-app');

module.exports = function(defaults) {
var app = new EmberApp(defaults, {
// Add options here
});

app.import('bower_components/fittext/fittext.js');

return app.toTree();
};

在我的控制台中,我可以输入“fitText”,然后我就会取回对象。所以,它现在是全局性的,我应该可以在任何地方使用它。但是 “未捕获的类型错误:$(...).fitText 不是函数”

@Tom Netzband 指出 fitText 的 bower 版本是 @adacio 维护的版本,它是 vanilla JS。我已经把它换成了 app.import('vendor/jquery.fittext.js');(JS 实际上只有 20 行左右)

以前我需要将它导入我想使用它的 Controller 或路由中 - 但文档不再引用它。在以moment.js为例的文档中,好像变成了global。

我已经将它放在 app.js 中的就绪钩子(Hook)中 - 在类似的 jQuery 东西旁边工作正常......但运气不好。在这种情况下,我只想影响 index.hbs/路由上的几个词

更新

这现在真的变成了另一个问题。我认为这仍然是同样的问题,但事实并非如此。因此,授予答案并提出新答案。谢谢。

最佳答案

看起来像bower install fittext不安装 fitText 的 jQuery 插件版本,它只安装它的纯 js 版本。

如果您查看您的 bower_components/fittext/fittext.js文件,你会看到 jQuery 没有传入或使用,并且来自 example.html 的示例文件显示用法为:

fitText(document.getElementById('fittext'), 1.2)

因此,如果您想要 jQuery 版本,您可能需要直接从 github 下载它并将其放入您的 vendor 中。文件夹并将其包含在 bower 之外。

更新

看起来在 bower 中注册的版本是从删除了 jQuery 的 jQuery 版本的 fork 版本:https://github.com/adactio/FitText.js

关于javascript - Ember 依赖项 "Uncaught TypeError: $(...).fitText is not a function",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32725319/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com