gpt4 book ai didi

javascript - 将 JustGage 与 Require.js 结合使用

转载 作者:行者123 更新时间:2023-11-28 07:23:21 25 4
gpt4 key购买 nike

JustGage 使用 Raphael,这已得到充分讨论 here ,不符合 AMD 标准(因此不适用于 Require.js)。

我以前没有使用过 Require.js,也没有做过很多 JS,所以我正在努力解决这个问题。我们进行了大量的尝试和错误;)

使用建议的方法here ,我已将 Raphael 模块拆分为单独的文件并单独包含它们,并猜测如何为 JustGage 做什么。

require.config({
paths: {
//other links removed
'eve': 'vendor/eve/eve',
'raphael-core': 'vendor/raphael/raphael.core',
'raphael-svg': 'vendor/raphael/raphael.svg',
'raphael-vml': 'vendor/raphael/raphael.vml',
'raphael': 'vendor/raphael/raphael.amd',
'justgage': 'vendor/justgage/justgage.1.0.1.min'
},
shim: {
'eve': {
exports: "eve"
},
'raphael': {
deps: ['eve'],
exports: "Raphael"
},
'justgage': {
deps: ['raphael'],
exports: "JustGage"
}
}
});

但是说明然后说“完成上述配置后,您可以像其他 require-js 模块一样开始使用 Raphael”,这没有多大帮助;)

我想我需要在 main.js 中做一些事情?

在我的 cshtml 页面中

require(["raphael", "justgage"], function(JustGage) {
$(function() {
var a = new JustGage({
id: "pvgauge",
value: @Model.GaugeValues.PV,
min: @Model.PVGauge.MinValue,
max: @Model.PVGauge.MaxValue,
title: "Personal Volume",
label: "PV",
levelColors: gaugeSettings.levelColors,
levelColorsGradient: gaugeSettings.levelColorsGradient,
showInnerShadow: gaugeSettings.showInnerShadow,
shadowSize: gaugeSettings.shadowSize,
labelFontColor: '#7ACE30',
titleFontColor: gaugeSettings.titleFontColor,
valueFontColor: gaugeSettings.valueFontColor
});
});
});

现在这至少找到了 JustGage,但现在给出了错误'Raphael' is undefined。

(我也尝试过直接将脚本包含在 cshtml 文件中,但收到错误 'Mismatched anonymous Define() module: function (eve) {')

我的理解是否正确,Require.js 意味着事物不在全局范围内? JustGage 预计 Raphael 会出现在全局范围内吗?

对于让 JustGage 工作有什么帮助吗?或者推荐一个与 Require.js 一起使用的“speedo”类型仪表的等效库?

最佳答案

快到了,您还需要将其添加到函数中,以便 JustGage 可以使用它。

require(["raphael", "justgage"], function(raphael,JustGage) {

如果 justgauge 是一个模块,那么您应该加载该模块中的依赖项,因为它将在该模块中查找 raphael,但是由于您已经加载了它,它应该可以工作,

更容易跟踪您的依赖项并在需要时加载它们,

define(['module' , "pathto/raphael"], function (module, raphael) {

关于javascript - 将 JustGage 与 Require.js 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30040314/

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