0

我有一个带有以下目录结构的小 requirejs 项目。

├── index.html
└── js
    ├── bob.js
    ├── build.js
    ├── jquery.js
    ├── main-built.js
    ├── main.js
    └── require.js

索引.html

<!DOCTYPE html>
<html>
    <head>
        <title>A Title</title>
        <script data-main="js/main-built.js" src="js/require.js"></script>
    </head>
    <body>
        <h1>Hello!</h1>
    </body>
</html>

js/main.js

define(function () {
    return 'bob';
});

js/build.js

({
    name: 'main',
    baseUrl: '.',
    out: 'main-built.js'
})

js/main.js

define(function (require) {
    var $ = require('jquery'),
        bob = require('bob');

    $(function () {
        $(':header').text(bob);
    });
});

我像这样运行 r.js:

./r.js -o js/build.js

它成功构建,但代码不在浏览器中执行。我究竟做错了什么?

4

1 回答 1

1

要真正运行该死的东西,你必须require在顶层的主模块。

在 index.html 中的某处添加此脚本可解决问题

<script>require(['main'])</script>
于 2013-06-28T04:13:32.410 回答