RequireJS와 함께 knockout.mapping 플러그인을 사용하여이 문제가 발생합니다. 기본적으로 내 앱을 호스팅하는 사이트는 knockout, knockout.mapping 및 requirejs를이 순서로로드합니다.RequireJS가있는 녹아웃 매핑 플러그인 : 캐치 오류 : 익명의 define() 모듈이 일치하지 않습니다.
<script src="http://127.0.0.1/scripts/require.js" type="text/javascript"></script>
<script src="http://127.0.0.1/scripts/knockout.js" type="text/javascript"></script>
<script src="http://127.0.0.1/scripts/knockout.mapping.js" type="text/javascript"></script>
더 이상 아무 것도하지 않으면이 불일치 오류가 발생합니다. 내가 깨닫지 못하는 어떤 종류의 주문이 있습니까?
/// 나는이 두 가지 테스트를 썼다 ///
업데이트 :
, 당신은 무엇을보고 무엇을 내가로드하는 경우이다를 내 프로젝트에 require.js를 지정하면 매핑 플러그인 이전에 매핑 플러그인이 보이지 않게됩니다. 이 매핑 플러그인을 어떻게 녹아웃을 필요로하는 필요로 사용하고 있다고 가정합니다 ...하지만 실패 이유를 못 박는 수 없습니다.
은 /// 2 업데이트 ///
이 시나리오는 여기서 중요한 것, 그래서 좀 더 많은 컨텍스트를 제공하겠습니다.
스크립트 태그에 knockout.js 및 knockout.mapping.js를 정의하는 웹 응용 프로그램을 그립니다. 그런 다음 제 3 자 위젯이 requireJS를 사용하여 의존성을 설정하는 페이지로로드됩니다. 문제를 일으키는 것으로 보이는로드입니다. 일부 라이브러리는 구식 학교를 통해로드되었으므로 수동 방식 및 기타 방식으로는 require를 사용하여로드되었으므로 기존 라이브러리의 컨텍스트를 망쳐 놓은 것처럼 보입니다.
호스트 응용 프로그램에서 require에 대한 참조를 제거하면 ko.mapping이 있는지 돌아보기 위해 오류가 발생합니다. 이것은 위젯이 맵핑 플러그인과의 관계를 어떻게 든 부 kn다.
저는이 라이브러리를 스태킹하는 것에 대해 RequireJS에 매우 익숙한 사람이 필요하다고 생각합니다. 분명히, 익명의 소비를위한 위젯을 만들 때 소비자가 requireJS를 사용하는 방법이나 사용 방법을 알지 못합니다.
/// 3 업데이트 가 최선을 가능한 한 문제를 명확히하기 위해 노력 ///, 어쩌면이 더 이해가됩니다
당신이 위젯을 주입 할 수있는 어떤 명확하게 정의 된 패턴이 있는가, RequireJS를 사용하여 수동으로 리소스를로드하는 기존 웹 페이지에? RequireJS는 기존 페이지가 이미로드 한 항목을 두 번로드하기 때문에 불가능한 것처럼 보입니다.
이 질문에 멀리 화가. 귀하의 대답은 해결책을 제공하지 않습니다. 누군가가 더 구체적인 것을 제공 할 수있을 때까지 해결하지 말 것을 제안합니다. –