问题标签 [labjs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
431 浏览

javascript - LABjs 错误:脚本总是执行它们使用 .script() 加载的序列

当我用 LABjs 做一些测试用例时,我遇到了一些问题,代码如下:

根据API描述,jquery-1.8.0.min.js和simple.js的执行顺序不保证。我用提琴手阻止了 jquery-1.8.0.min.js,我的 boserverd 是:

  1. 在 IE8 下运行正常,simple.js 下载完成后立即执行。
  2. 在 chrome 20 中,直到 jquery-1.8.0.min.js 完成下载并执行,simple.js 才执行。

这是一个错误吗?

然后我在 chrome 20 中做了另一个测试,代码如下:

运行此代码时 jquery-1.8.0.min.js 没有开始下载,是问题吗?

这是api描述: http: //labjs.com/documentation.php#script

0 投票
2 回答
1209 浏览

requirejs - yepnope 的多个条件

我使用 yepnope.js 作为加载的资源。仅当加载该模块的所有依赖项时,我才想在我的 JS 模块中执行代码。我不想加载已经加载的 JS 依赖项。

假设我有依赖项 D1.js 和 D2.js。我试过

这可行,但是每次都会加载资源,即使它们之前已经加载过。

如果我做这样的多个测试:

目前尚不清楚将整体完成的功能放在哪里 - 在所有资源加载后运行的功能。

是否可以使用 yepnope 执行此操作,还是需要使用其他组件?

谢谢。

0 投票
2 回答
1810 浏览

performance - 页面加载时间减少 200 毫秒是否显着?

我在我开发的一个站点中使用实验室 js 进行了一些测试,页面加载时间减少了 200 毫秒。现在后端处理后花费的总时间约为 1.5 秒。

如果值得麻烦,我正在徘徊。200ms 是一个巨大的收益吗?一个荒谬的?我知道页面加载时间会影响页面排名,但是 200 毫秒会产生如此大的差异吗?

0 投票
1 回答
675 浏览

javascript - 使用 Lab.js 加载模块

为什么 ReferenceError: $ is not defined

但是工作:

2. item1.js

item2.js

//Uncaught ReferenceError: interface is not defined Help

0 投票
1 回答
1167 浏览

javascript - 使用 LABjs 的错误执行顺序

我做了一个非常简单的例子(改编自我的真实项目),它使用 LABjs (v2.0.3) 加载 javascript 文件并以给定的顺序执行它们。我正在粘贴下面的代码。

  • 由于 testLAB.js 等待 mainCanvas.js,而 mainCanvas.js 等待 events.js,我希望警报的顺序是:“events.js”“mainCanvas.js”“testLAB.js”。
  • 但是,我通常得到相反的顺序:“testLAB.js”“mainCanvas.js”“events.js”。
  • 有时我会得到“testLAB.js”“events.js”“mainCanvas.js”。

谁能解释一下?
完整的例子可以在这里下载。

编辑:我正在使用 node.js 和http-server 模块在本地提供这些页面(以防您也想在本地尝试)

文件:index.html

文件:js/app/testLAB.js

文件:js/app/mainCanvas.js

文件:js/app/events.js

0 投票
2 回答
1267 浏览

javascript - 脚本似乎在 jQuery 加载之前运行 - Uncaught ReferenceError: $ is not defined

我正在编辑一个共享点母版页,其中包含在我的头标记的最顶部、对 labJS 的调用和一个 scriptloader.js 文件。

这是该文件包含的内容:

在我的共享点站点上,我有一个较小的 html 页面,其中包含一个时钟

我的控制台在我的页面的第 1472 行给了我这个错误,但是 scriptloader.js 文件基本上在开始标记之后被调用。

0 投票
0 回答
2291 浏览

javascript - 未捕获的类型错误:无法读取未定义的属性“数据表”

通过 LABjs 加载资源时尝试在图表点中使用谷歌图表。

我不断收到 DataTable 未定义的错误。

这是我用来加载 LABjs 的:

实验室:

jQuery 是第一个调用,在它之前没有其他任何东西运行,然后我在 jsapi 之后调用其他东西,并确保在 jsapi 之前不调用图表。当它全部加载到 sharepoint aspx 文件中时它工作正常,但我想使用 LAB 更好地管理我的脚本。

错误:

错误截图

0 投票
1 回答
329 浏览

javascript - 加载两个脚本块(使用 lab.js 作为加载管理器)

我正在尝试lab.js在不同的地方加载两个块,但是如果我从第一个块中加载的文件中使用第二个块中的函数,它们将显示为未定义。

这是第一个块(从我的 MVC 项目的标题模板中加载

这是在内容模板中加载的第二个块

未加载第二个块(.tooltip)中的函数,因为它们是 jquery 的依赖项。没有办法将两个块统一在一个加载到标题中的块中(两个文件完全独立并且具有动态创建的内容,这也不是我想要实现的)

所以问题是......有没有办法告诉第二个块只在第一个块完全加载时才加载?

非常感谢!

0 投票
2 回答
7280 浏览

javascript - 未捕获的错误:[$injector:modulerr] 无法使用 LABJS 实例化模块

加载我的 Angular 应用程序时,我不断收到此错误。在 Chrome 中刷新几次,我的应用程序将运行,但 IE 和 FF 不行。

该错误将我链接到此错误页面,但我真的不明白它在说什么。

我正在使用LabsJS加载我的应用程序,包括控制器和服务。

标记:

我想发布更多代码,但我不知道从哪里开始,并且有角度的一切都在多个文件中。我是通过github上传的。

0 投票
1 回答
1051 浏览

javascript - 要加载的 js 和 css 脚本的文件大小

我知道加载 javascript 和 css 的最佳方法是将 css 文件加入并压缩在一起,对于 javascript 也是如此。因此,如果您需要 javascript 文件,您只需对服务器进行 1-2 次调用。但似乎发出 3 个请求,1 个用于 html 文档,1 个用于 css,1 个用于 js,这并不是加载网站的最高效方式。此外,由于您可以异步加载 js,因此您可以一次加载独立的 js 文件。只要确保你没有加载太多的 js 文件。

所以问题是,要加载的最佳文件数量是多少?js 和 css 文件的数量应该是多少才能使页面加载性能最高?有什么规则可以计算吗?对网速有依赖性吗?因此,如果互联网速度很慢,我不想打开很多与服务器的连接,但最好使用一个?

下面是凯尔辛普森的回答:https ://stackoverflow.com/questions/12779565/comparing-popular-script-loaders-yepnope-requirejs-labjs-and-headjs/12786867#comment18314973_12786867 说明您只需要在 js 文件中拆分大小超过 100kb。我真的很想找到一些有用的东西,但是所有的描述都很模糊。提前致谢。