首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用require.js的简单示例

使用require.js的简单示例
EN

Stack Overflow用户
提问于 2012-05-07 23:45:48
回答 3查看 38.9K关注 0票数 22

我正在努力学习如何使用require.js。因此,我制作了一个HTML页面,在主体中包含以下标记。

代码语言:javascript
复制
<script type="text/javascript" data-main="../js/shirt" src="../js/require.js"></script>
<script type="text/javascript">
    alert("Shirt color is " + shirt.color);
</script>

../js/shit.js包含以下代码

代码语言:javascript
复制
define({
    color: "black",
    size : "large"
});

如何在我的html中使用这个简单的值对?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-05-07 23:52:25

主文件should be a require call的内容。例如,您有一个包含以下内容的values.js模块:

代码语言:javascript
复制
define({
    color: "black",
    size : "large"
});

在主文件(shirt.js)中,将values.js作为依赖项加载(假设它们位于同一目录中):

代码语言:javascript
复制
require(['values'],function(values){
    //values.color
    //values.size
});
票数 15
EN

Stack Overflow用户

发布于 2012-05-09 00:07:11

除了Domenic的回答之外,您可能更喜欢这种使用定义函数的方式,而不是在模块中使用require函数。

代码语言:javascript
复制
// shirt.js
define({
    color: "black",
    size : "large"
});

// logger.js
define(["shirt"], function (shirt) {
    return {
        logTheShirt: function () {
            console.log("color: " + shirt.color + ", size: " + shirt.size);
        }
    };
});

// main.js
define(["shirt", "logger"],function (shirt, logger) {    
    alert("Shirt color is: " + shirt.color);
    logger.logTheShirt();
});

我更喜欢这种方式,但我想这只是品味问题。(我假设所有脚本都在同一个文件夹中。)

票数 33
EN

Stack Overflow用户

发布于 2012-05-07 23:57:56

除了Joseph的回答之外,您还可以编写其他依赖于shirt的模块(这正是RequireJS真正强大的地方)。

代码语言:javascript
复制
// shirt.js
define({
    color: "black",
    size : "large"
});

// logger.js
define(function (require) {
    var shirt = require("./shirt");

    return {
        logTheShirt: function () {
            console.log("color: " + shirt.color + ", size: " + shirt.size);
        }
    };
});

// main.js
define(function (require) {
    var shirt = require("./shirt");
    var logger = require("./logger");

    alert("Shirt color is: " + shirt.color);
    logger.logTheShirt();
});

那么你的HTML就可以

代码语言:javascript
复制
<script data-main="../js/main" src="../js/require.js"></script>
票数 18
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10485039

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档