현재 angularJS 및 cordova 3.2를 사용하는 휴대 전화 용 응용 프로그램을 개발 중입니다.Angularjs가 응용 프로그램을 중단시키는 "예기치 않은 엄격 모드 예약어"를 던졌습니다.
일부 플레이어는 응용 프로그램이 장치에서 시작하지 않는다고보고합니다. 이 장치는 다음과 같습니다.
- 옵티머스 P880 (안드로이드 버전 4.0.3)
- Lifetab 폰 메디온 (Adroid 버전 4.0.3)
- 소니 에릭슨 엑스 페리아 미니 프로 (안드로이드 4.0.4) 그래서 그것을
어떻게 든 그 안드로이드 버전 4.0.3/4에 연결되어 보인다.
은 코르도바 응용 프로그램이 시작되는 수단을 시작하지,하지만 (내 경우 전체 루트 윈도우 설정)을ng-cloak
클래스가 부착 된 모든 요소가 숨겨져 남아 있기 때문에이 시작되기 전에 그 충돌을 AngularJS와. 따라서 사용자는 아무 것도 볼 수 없습니다.
문제는 내가 그것을 테스트하기 위해이 장치 중 원하는 장치를하지 않아도,하지만 하나의 플레이어는 행 번호와 파일 이름으로
Uncaught SyntaxError: Unexpected strict mode reserved word
말, 나에게 그의 장치의 로그를 보내했다 문제는 아래 코드 (3878 줄의 angular.js v1.2.16 파일에 있음)로 인해 발생한다고 판단 할 수 있습니다. 문제는 여기에 무슨 문 throw err;
(#3878)
function createInternalInjector(cache, factory) {
function getService(serviceName) {
if (cache.hasOwnProperty(serviceName)) {
if (cache[serviceName] === INSTANTIATING) {
throw $injectorMinErr('cdep', 'Circular dependency found: {0}', path.join(' <- '));
}
return cache[serviceName];
} else {
try {
path.unshift(serviceName);
cache[serviceName] = INSTANTIATING;
return cache[serviceName] = factory(serviceName);
} catch (err) {
if (cache[serviceName] === INSTANTIATING) {
delete cache[serviceName];
}
throw err; /*** THE ERROR APPLIES HERE! **/
} finally {
path.shift();
}
}
}
정말 말할 수 없습니다, 적용 할 것으로 보인다. 응용 프로그램은 다른 장치 및 기타 안드로이드 버전에서 잘 작동합니다.
플레이어들에게 어떻게 문제를 해결할 수 있었는지 아는 사람이 있습니까?
아이디어가 없습니까? 그게 나를 위해 정말 차단하고, 나는 해결책을 얻고 싶습니다! – Sebastian
서비스 이름은 무엇입니까? (미래의) 예약어로 함수의 이름을 짓려고했을 때이 오류가 발생했습니다. 당신은 아마 같을 겁니다. 이 때문에''strictly'' 지시어를 제거하지 마십시오. –