1

我正在尝试更新 require.js 中的 bust 变量,因此浏览器被迫重新获取而不是从缓存中加载资源。我发现这里有几个人问过类似的问题。我正在尝试使用一段简单的代码。

<html>
<head>
    <title>jQuery+RequireJS Sample Page</title>
    <!-- This is a special version of jQuery with RequireJS built-in -->

    <script>
    var require = {
        urlArgs : "bust="+getRandom()
    };
    </script>
    <script data-main="scripts/main" src="scripts/require-jquery.js"></script>

    <script>
    function getRandom() {
    var buildNumber;
        $.get("/resource/buildNumber", function(data) {
            buildNumber = data;
        });
        return buildNumber;
    }
    </script>
</head>
<body>
    <h1 id="heading">jQuery+RequireJS Sample Page</h1>
    <p>Look at source or inspect the DOM to see how it works.</p>
</body>

我正在尝试从服务器上的属性文件中获取我的内部版本号的值。但我收到以下错误:

Uncaught ReferenceError: getRandom is not defined 

所以我尝试了这个:

<script data-main="scripts/main" src="scripts/require-jquery.js"></script>
    <script>
    var require = {
        urlArgs : "bust="+getRandom()
    };
    function getRandom() {
        var buildNumber;
        $.get("/resource/buildNumber", function(data) {
            buildNumber = data;
        });
        return buildNumber;
    }
    </script>

但我得到这个错误:

Uncaught TypeError: Property 'require' of object [object Object] is not a function 

看起来在声明 require-jquery.js 之前就必须设置 bust 变量,但是如何在不访问 jquery 库的情况下访问服务器端 API?我想为每个构建更新 bust 变量。

任何正确方向的指针都将不胜感激。

谢谢。

4

0 回答 0