신입생 질문은 lime.js
으로 게임 개발을 시작한 것이지만 아래에서이 오류가 발생합니다. 왜이 오류는 'moba.Bullet'
이 이미 단 한 번 제공 되었기 때문에 이미 선언 된 이유를 설명합니다.은 네임 스페이스가 이미 선언되었을 때 '이미 선언되었습니다'라고 말합니다.
이 전체 오류입니다 : 만 일단 네임 스페이스 을 제공 한
goog.provide = function(name) {
if (!COMPILED) {
// Ensure that the same namespace isn't provided twice.
// A goog.module/goog.provide maps a goog.require to a specific file
if (goog.isProvided_(name)) {
throw Error('Namespace "' + name + '" already declared.');
}
}
:
Uncaught Error: Namespace "moba.Bullet" already declared.
goog.provide base.js:
(anonymous function)
가 base.js에서 오류의 위치를 찾고,이 코드를 부여하고 ! 이것은 이것을 더욱 혼란스럽게 만든다 !!
이 문제를 이해하면 내 파일 구조가 도움이 될 것입니다.
limejs >
moba >
moba.html
moba.js
bullet.js
bin >
lime.py
projects
external >
closure
box2D
및 moba.js (주 JS 파일) 총알을 인식 할 수 있도록 난 빈/lime.py 업데이 트를 실행 : 내 lime.js 게임의
폴더 구조 그렇게 것 같습니다. js!
이제 각 파일을 goog.provide 및 goog.require로 호출하는 방법에 대해 알아 보겠습니다.
moba.js >
goog.provide('moba');
goog.require('moba.Bullet');
bullet.js >
goog.provide('moba.Bullet');
Pretty standard, right?!
여기에서 어디로 가야할지 모르겠습니다. 커맨드 라인을 통해 프로젝트를 다시 만들려고했으나 사랑이 없었습니다. 그러니 도와주세요. 도와 줘서 고마워!
안녕하세요 앰버, 당신이 발견 한 불균형 중괄호는 포스터의 문제의 일부가 아니라 부주의 복사 및 포스터의 붙여 넣기의 부산물로 생각합니다. 댓글을 통해 답변을 찾는데 도움이되는 상황을 명확히하고 추가 할 수있는 원래 게시물로 물을 수도 있습니다. –