'오류: [$parse:lexerr] 렉서 오류:heroku 전개 시 예기치 않은 다음 캐릭터'
yoman generator를 사용하여 각진 앱을 만들었습니다.개발에서는 매우 효과가 있습니다만, 헤로쿠에 전개하고 특정 페이지를 방문하면 다음과 같은 에러가 발생합니다.
Error: [$parse:lexerr] Lexer Error: Unexpected next character at columns 0-0 [\] in expression [\].
http://errors.angularjs.org/1.2.6/$parse/lexerr?p0=Unexpected%20nextharacter%20&p1=s%200-0%20%5B%5C%5D&p2=%5C
at http://ang-news.herokuapp.com/scripts/244c37f5.vendor.js:3:30474
at Zd.throwError (http://ang-news.herokuapp.com/scripts/244c37f5.vendor.js:6:14396)
at Zd.lex (http://ang-news.herokuapp.com/scripts/244c37f5.vendor.js:6:13696)
at $d.parse (http://ang-news.herokuapp.com/scripts/244c37f5.vendor.js:6:16445)
at http://ang-news.herokuapp.com/scripts/244c37f5.vendor.js:5:13197
at e.parseAs (http://ang-news.herokuapp.com/scripts/244c37f5.vendor.js:5:23401)
at Object.e.(anonymous function) [as parseAsResourceUrl] (http://ang-news.herokuapp.com/scripts/244c37f5.vendor.js:5:23604)
at http://ang-news.herokuapp.com/scripts/244c37f5.vendor.js:6:28873
at q (http://ang-news.herokuapp.com/scripts/244c37f5.vendor.js:4:23046)
at h (http://ang-news.herokuapp.com/scripts/244c37f5.vendor.js:4:19250)
이 설명은 표현식에 어휘 오류가 있을 때 오류가 발생함을 나타냅니다.
그건 무엇이고 왜 생산에만 나타나는 거죠?
ng-click을 사용하는 동안 오류가 발생했습니다.
<a ng-click="#/search/San+Francisco">test</a>
ng-href 대신
<a ng-href="#/search/San+Francisco">test</a>
도움이 됐으면 좋겠다
ng-pattern=some_reg_ex/'를 사용하는 경우.예를 들어 범위 변수에 저장하십시오.$scope.emailPattern = '/email_regex/'
일반적으로 이 문제는 angular가 식 또는 함수를 예상하고 있을 때 문자열 리터럴을 제공할 때 발생합니다.문자열에 "#"이 있으면$parse:lexerr
에러입니다.
이 경우 식을 사용해야 할 때 문자열 리터럴을 커스텀 디렉티브 속성으로 설정하고 있었습니다.
틀렸다:
<my-directive my-attr="/foo#bar"></my-directive>
정답:
<my-directive my-attr="'/foo#bar'"></my-directive>
이 예에서는my-attr
사용자 지정에서 양방향 바인딩(=)에 대해 특성이 설정되었습니다.my-directive
@로 설정되어 있으면 에러는 발생하지 않습니다.
scope: {
my-attr: "="
}
나의 경우, 이것은 정규 표현이 에워싸여지지 않았기 때문에 일어났다./
즉,ng-pattern="^[0-9]$"
대신ng-pattern="/^[0-9]$/"
.
@secenreaktor가 옳습니다만, 보다 구체적으로 말하면, 이 에러는 잘못된 구문을 사용하는 경우에 발생합니다.제 경우, 제가 실수로 다른 곳에 있는$
문자, 각도에서 사용, 와 함께#
, 핸들 바에서 사용:
<button class="danger" type="button" title="Remove Property Asset {{#index}}">Remove Asset</button>
물론 수정은#
캐릭터에 의해 문제가 해결되었습니다.
<button class="danger" type="button" title="Remove Property Asset {{$index}}">Remove Asset</button>
ng-click에 문제가 있었습니다.
ng-click="#"
방금 지웠더니 오류가 사라졌어요.
문자열로 전달된 매개 변수가 올바른 리터럴 문자열이 아닙니다.
ng-init('[aa]')
대신
ng-init([aa])
제 경우엔 엔지쇼에서 #가 나왔는데
불량:
<a ng-show='#'>
최고입니다.
모델 가치가surveyCtrl.user.googleEmail
이someone@gmail.com
, 사용시에 다음의 에러가 발생했습니다.
ng-disabled="{{surveyCtrl.user.googleEmail}}"
이 조건은 기능합니다.
ng-disabled="{{surveyCtrl.user.googleEmail != ''}}"
다음과 같은 방법으로 에러가 발생했습니다.
<div ng-bind="{{vm.myModel}}"></div>
콧수염을 제거하여 수정합니다.
<div ng-bind="vm.myModel"></div>
ng-value의 select 옵션을 사용하다가 이 오류가 발생하여 ng-value 속성 대신 값을 유지했습니다.
<select>
<option ng-repeat="employee in employees"
title="{{employee.fullName}}"
value="{{employee.email}}">
{{employee.email}}
</option>
</select>
언급URL : https://stackoverflow.com/questions/22115110/error-parselexerr-lexer-error-unexpected-next-character-on-heroku-deploy
'code' 카테고리의 다른 글
Oracle 날짜 "Between" 쿼리 (0) | 2023.02.16 |
---|---|
컨트롤러에서 JSON 렌더링 (0) | 2023.02.16 |
각도 방향에서 부울 값을 바인딩하려면 어떻게 해야 합니까? (0) | 2023.02.16 |
jq를 사용하여 요소 속성 값으로 개체 배열을 필터링하려면 어떻게 해야 합니까? (0) | 2023.02.16 |
Javascript를 사용한 CSS 값 변경 (0) | 2023.02.16 |