1

ライブラリの依存関係を管理する目的で、RequireJSをSpringMVCアプリケーションに追加しました。とりわけ、jQueryとjQueryUIを使用しています。動作していますが、ページをロード/更新するたびに、ライブラリがロードされていない状態でページが最初に表示され(すべてが正しく表示されません)、次にページが点滅し、すべてが正しく表示されます。それは正常ですか?これが私がこれまでに持っているものです:

main.js:

require([ "jquery-1.8.3", "jquery-ui-1.9.2.custom", "newsearch" ], function() {

});

mysearch.jsp:

<%@ page session="true"%>
<%@page contentType="text/html;charset=UTF-8"%>
<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<html>
<head>
<title>MyApp</title>

<!-- CSS is loaded here -->

<!-- JavaScript -->
<c:url value="/resources/scripts/main" var="main" />
<c:url value="/resources/scripts/require-jquery.js"
var="require" />

<script data-main="${main}" src="${require}"></script>

...

newsearch.jsp:

$(document).ready(
    function() {
        // JS Code
});
4

1 に答える 1

1

以下のコードは通常、SpringMVCで正常に機能します。$(document).ready(...)呼び出しはmysearch.jspの下部にあることに注意してください。

<script type="text/javascript" src="${pageContext.request.contextPath}/path/to/require-2.0.2.min.js"></script>
<script type="text/javascript" src="${pageContext.request.contextPath}/path/to/jquery-1.7.1.min.js"></script>

<script type="text/javascript">
    $(document).ready(function() {
        require(["${pageContext.request.contextPath}/path/to/a-dependency.js", 
                 "${pageContext.request.contextPath}/path/to/another-dependency.js"],

            function() {
              console.log('Page dependencies loaded...');
              // More initialization code...
            }
        );              
  });
 </script>
于 2012-12-12T03:05:48.703 に答える