2013-08-02 1 views
0

내가 한 페이지 아키텍처에 대한 durandal.js를 사용하는 것을 시도하고,탐색 durandal.js하는 방법?

는 내가 뭘 원하는 때

이미 전 사업부에 한 페이지 아키텍처 = 옛 방식 모든 페이지를로드하고 응용 프로그램을 가지고있다 나는 hotspa 페이지를 열어야하는 페이지를 클릭한다.

나는 지금 이와 비슷한 글을 쓸 수있다. www.xyz.com #/details,

세부 정보는 내 durandal보기 페이지입니다! 내가 <a> herf .... #/세부 사항을 넣을 때

, 난이 같은 오류가있어 : http://postimg.org/image/hoeu1wiz5/

을하지만 난 동일한 URL로 새로 고칠 때, 그것은 잘 작동, 내가보기를 볼 수 있어요!

당신은 Durandal의 2.0,이 때문에 당신의 Shell.js 당신이 정의되지 않은 라우터를 얻고있는 버전 전에 무엇을 사용하는 경우 내가이 오류

답변

0

있어 왜 내가 모르거나 당신이 나쁜 정의가 라우터 모듈이 어디에 있는지 또는 필요에 따라 require.js를 통해 '필요로하는 것'대신 색인에 스크립트를 정의하고있는 경우

첫 번째 - shell.js를 확인하십시오. 정의 함수가 있어야합니다./이와 같은 일을하고, 이렇게보기에 노출시켜야합니다. -

define(['durandal/plugins/router'], function (router) { 

    var shell = { 
     router: router 
    }; 

    return shell; 
}; 

2 위 - 'durandal/plugins/router'가 솔루션 탐색기의 정확한 위치를 가리키고 있는지 확인하십시오.이 경우 앱> durandal> plugins> router입니다. 그렇지 않은 경우 라우터가 없으면 Nuget을 사용하여 라우터를 추가 할 수 있습니다.

3rd - 색인 또는 셸 html 페이지에서 스크립트를로드하지 않도록하십시오. require.js를 사용할 때는 모든 스크립트가 제대로 작동하기 위해로드하려는 스크립트를 require 문으로 이동해야합니다. '익명의 익명의 define() 모듈'오류는 대개 다른 곳에서로드 할 때 발생합니다 - http://requirejs.org/docs/errors.html#mismatch