gpt4 book ai didi

javascript - 我应该如何以及在哪里存储我自己的 YUI3 JavaScript 文件?

转载 作者:行者123 更新时间:2023-11-29 22:35:14 24 4
gpt4 key购买 nike

我打算编写一些应使用 YUI3 加载的 JavaScript 模块。我应该如何组织我的文件和文件夹?有推荐的文件夹结构吗?如果我将我的文件存储在类似于“核心”或“画廊”的位置,那么应该可以轻松加载 - 或者不是?

如果我以下列方式存储我的脚本,是否必须列出“YUI().use ...”调用中的每个模块?

de-mylib-www/mymodules/mod1/mod1-base.js
de-mylib-www/mymodules/mod2/mod2-base.js
de-mylib-www/mymodules/mod3/mod3-base.js
de-mylib-www/mymodules/mod3/mod3-class1.js
de-mylib-www/mymodules/mod3/mod3-class2.js

最佳答案

要充分利用 YUI 的加载器模式,您必须遵守它的一些规则。就目录模式而言,您的示例看起来几乎完全正确。

除非您在文档中明确包含您的 javascript 源文件,否则您将需要通知 YUI 加载器模块存在以及它们具有哪些依赖项。目前,有 a bug在为模块加载依赖项的方式中,因此您必须在两个地方声明依赖项,在加载程序配置中,以及作为 YUI.add 语句的后缀。

您可以通过两种方式配置加载器:您可以在调用 use 之前将配置作为参数传递给 YUI(),或者您可以将配置分配给 YUI_config 全局变量:

var cfg = {
/* other configs */
modules: {
'mod3-base': { requires: [ 'mod3-class1', 'mod3-class2' ] },
'mod3-class1': { /* */ },
'mod3-class2': { /* */ }
}
}

// You could pass the config in as an argument:
YUI(cfg).use('mod3-class2', function(Y) {
// your code
});

// Or set it as a magic global:
YUI_config = cfg; // will implicitly configure all YUI().use statements

您需要配置加载程序,以便它知道在哪里可以找到您的模块文件。

通常,加载器希望每个模块都有自己的目录,其中包含一个或多个子模块文件和一个串联的“ super 模块”文件。例如,查看“Base”模块,我们看到以下模式:

  1. base-base.js
  2. base-build.js
  3. base-pluginhost.js
  4. base.js:base-base、base-build 和 base-pluginhost 的串联副本

这四种类型中的每一种都有三个变体,一个“原始”源文件、一个“-min”和一个“-debug”。根据您配置加载程序的方式,它可能会寻找缩小的变体。

关于javascript - 我应该如何以及在哪里存储我自己的 YUI3 JavaScript 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5344934/

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