Ember.js: 2.10μ—μ„œ '였λ₯˜'경둜λ₯Ό μ„€μ •ν•  수 μ—†μŠ΅λ‹ˆλ‹€.

에 λ§Œλ“  2016λ…„ 11μ›” 29일  Β·  29μ½”λ©˜νŠΈ  Β·  좜처: emberjs/ember.js

Ember.jsλŠ” 기본적으둜 '였λ₯˜'경둜λ₯Ό μ„€μ •ν•˜μ§€λ§Œ 경둜 μΈμ‹κΈ°λŠ” 더 이상 쀑볡 경둜λ₯Ό ν—ˆμš©ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
https://github.com/tildeio/route-recognizer/blame/5d54688f04273d3a921470b903a36266dddcdaf2/dist/route-recognizer.js#L525 -L531

그러면 μ½˜μ†”μ— 였λ₯˜κ°€μžˆλŠ” 빈 νŽ˜μ΄μ§€κ°€ λ‚˜νƒ€λ‚©λ‹ˆλ‹€.

Uncaught Error: You may not add a duplicate route named `error`

κΈ°λ³Έ '였λ₯˜'κ²½λ‘œκ°€ 여기에 μ„€μ •λ©λ‹ˆλ‹€.
https://github.com/emberjs/ember.js/blob/10857fd98008bb47bd63bfe3d21b0fc224a197a5/packages/ember-routing/lib/system/dsl.js#L49 -L50

ember g route error μ‚¬μš©ν•˜μ—¬ error 경둜λ₯Ό μ²˜λ¦¬ν•˜μ—¬ ν…ŒμŠ€νŠΈ ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
이 κΈ°λŠ₯은 2.9μ—μ„œ 잘 μž‘λ™ν–ˆμŠ΅λ‹ˆλ‹€.

Bug Ember 2.10 Has Reproduction

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

2.11.1μ—μ„œ μˆ˜μ • 됨

λͺ¨λ“  29 λŒ“κΈ€

@ diamondo25 Twiddleμ—μ„œ μž¬ν˜„ ν•  수 μžˆμŠ΅λ‹ˆκΉŒ?

λ‚˜λ„ 이걸보고 있고 μ–΄μ œ κ°€μž₯ 졜근 λ² νƒ€μ—μ„œ λ³Έ 기얡이 μ—†λ‹€

합법적 인 것 κ°™μŠ΅λ‹ˆλ‹€. 이것은 λ‚΄κ°€ λ§Œλ“  route-recognizer λ³€κ²½ λ•λΆ„μž…λ‹ˆλ‹€. μ‚¬μš©μžκ°€ 이미 생성 ν•œ 경우 κΈ°λ³Έ 생성을 잠 κ°€μ•Όν•©λ‹ˆλ‹€. (κ³ μΉ˜λŠ” 방법을 μ•Œκ³  μžˆμŠ΅λ‹ˆλ‹€.)

@nathanhammond λ„ˆλ¬΄ 빨리 @rwjblue λ‚˜λŠ” "버그"λΌλŠ” λ ˆμ΄λΈ”μ„ λΆ™

그것은 μˆ˜μ •μ΄ μ•„λ‹™λ‹ˆλ‹€, @pixelhandler! μ—¬κΈ°μ„œ 버그가 λ„μž…λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 😜이 문제λ₯Ό ν•΄κ²°ν•˜λ©΄ 포인트 λ¦΄λ¦¬μŠ€κ°€ ν•„μš”ν•˜μ§€λ§Œ λΌμš°ν„° μž‘μ—…μ„ λ‹€μ‹œ μˆ˜ν–‰ν•˜κΈ° 전에 ν•΄κ²°ν•΄μ•Ό ν•  λͺ‡ 가지 λ‹€λ₯Έ 사항이 μžˆμŠ΅λ‹ˆλ‹€. (ν•΄κ²°ν•΄μ•Ό ν•  λ―Έν•΄κ²° λ¬Έμ œκ°€ μ•½ 5 개 μžˆμŠ΅λ‹ˆλ‹€.)

이 μ‚¬λžŒμ— λŒ€ν•œ μ§€μœ„κ°€ μžˆμŠ΅λ‹ˆκΉŒ?

Bustle 앱을 2.10으둜 μ—…κ·Έλ ˆμ΄λ“œν•˜λŠ”μ΄ λ¬Έμ œκ°€ λ°œμƒν–ˆμœΌλ©° 루트 error 경둜λ₯Ό λ‹€λ₯Έ μ΄λ¦„μœΌλ‘œ λ¦¬νŒ©ν† λ§ν•˜κ±°λ‚˜ 2.10으둜의 μ—…κ·Έλ ˆμ΄λ“œλ₯Ό 보λ₯˜ν•΄μ•Όν•©λ‹ˆλ‹€.

μš°λ¦¬λŠ” λ˜ν•œμ΄ λ²„κ·Έμ˜ μƒνƒœμ— 관심이 μžˆμŠ΅λ‹ˆλ‹€. μš°λ¦¬λŠ” λ‹ΉλΆ„κ°„ 2.10으둜의 μ—…κ·Έλ ˆμ΄λ“œλ₯Ό 보λ₯˜ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

error 경둜λ₯Ό λͺ…μ‹œ 적으둜 λ“±λ‘ν•˜μ§€ μ•Šκ³  였λ₯˜ ν…œν”Œλ¦Ώ, 경둜 등을 κ·ΈλŒ€λ‘œ 두어이 문제λ₯Ό ν•΄κ²°ν•  수 있기λ₯Ό λ°”λžμŠ΅λ‹ˆλ‹€. λ‚˜λŠ” 그것을 μ‹œλ„ν•˜κ³  λ°œκ²¬ν–ˆμŠ΅λ‹ˆλ‹€.

  • μ‹€νŒ¨ν•œ 경둜 ν›„ν¬μ—μ„œ λΌμš°ν„°λŠ” 였λ₯˜ 경둜둜 버블 링되고 λ‚΄ μ‚¬μš©μž 지정 ν…œν”Œλ¦Ώμ΄ ν‘œμ‹œλ©λ‹ˆλ‹€.
  • μ˜λ„μ μœΌλ‘œ 였λ₯˜λ‘œ μ „ν™˜ν•˜λ©΄ λΌμš°ν„°κ°€ λ‚΄ ν…œν”Œλ¦ΏμœΌλ‘œ μ „ν™˜λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. ν•˜μ§€λ§Œ ν₯λ―Έλ‘­κ²Œλ„ κ²½λ‘œκ°€ μ‘΄μž¬ν•˜μ§€ μ•Šμ„ λ•Œλ°›λŠ” 것과 λ™μΌν•œ 였λ₯˜ λ©”μ‹œμ§€λ₯Ό κΈ°λ‘ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

ν…œν”Œλ¦Ώ, 경둜, 컨트둀러 등을 κ·ΈλŒ€λ‘œλ‘κ³  λͺ…μ‹œ 적으둜 처리 된 였λ₯˜ 사둀에 λŒ€ν•΄ λ™μΌν•œ ν…œν”Œλ¦Ώμ„ κ°€λ¦¬ν‚€λŠ” μ‚¬μš©μž 지정 였λ₯˜ 경둜λ₯Ό 등둝 ν•  수 μžˆλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. μ•„λ§ˆλ„ 이것은 λ‚΄ μ‚¬μš©μž μ •μ˜ ν…œν”Œλ¦ΏμœΌλ‘œ 작힌 였λ₯˜μ™€ μž‘νžˆμ§€ μ•Šμ€ 였λ₯˜λ₯Ό λͺ¨λ‘ 처리 ν•  κ²ƒμž…λ‹ˆλ‹€.

@nathanhammond- μœ„μ— λŒ€ν•œ 생각이 μžˆμœΌμ‹­λ‹ˆκΉŒ? ν•΄μ»€μ˜ κ°€μΉ˜κ°€ μžˆκ±°λ‚˜ 곡식적인 μˆ˜μ •μ„ κΈ°λ‹€λ¦¬λŠ” 것이 더 λ‚«μŠ΅λ‹ˆκΉŒ?

μ‹ κ²½ 쓰지 마 :(

μœ„μ˜ μ œμ•ˆμ€ μ—¬μ „νžˆ error 맀핑이 ν•„μš”ν•˜λ©°μ΄ 버그λ₯Ό μœ λ°œν•©λ‹ˆλ‹€.

처리 된 였λ₯˜μ— λŒ€ν•œ μ‚¬μš©μž 지정 경둜λ₯Ό λ§Œλ“€κ³  error ν…œν”Œλ¦Ώμ—μ„œ λ™μΌν•œ 였λ₯˜ ꡬ성 μš”μ†Œλ₯Ό μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

μˆ˜μ •μ„ 보λ₯˜μ€‘인 μœ μΌν•œ λ‹€λ₯Έ μ ‘κ·Ό 방식 인 것 κ°™μŠ΅λ‹ˆλ‹€.

CC : @nathanhammond

이 λ¬Έμ œκ°€ ember v2.12.0-beta.1μ—μ„œ μˆ˜μ • 된 κ²ƒμœΌλ‘œ λ‚˜νƒ€λ‚¬μŠ΅λ‹ˆλ‹€.이 μˆ˜μ • 사항을 2.11 릴리슀둜 λ°± 포트 ν•  κΈ°νšŒκ°€ μžˆμŠ΅λ‹ˆκΉŒ? 2.12 베타 μ΄ν›„μ—λŠ” μ™„μ „νžˆ μƒˆλ‘œμš΄ λ¬Έμ œκ°€ λ„μž…λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

2.12 베타 μ΄ν›„μ—λŠ” μ™„μ „νžˆ μƒˆλ‘œμš΄ λ¬Έμ œκ°€ λ„μž…λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

λ² νƒ€μ£ΌκΈ°μ—μ„œ 발견 ν•œ 문제λ₯Όλ³΄κ³ ν•˜μ‹­μ‹œμ˜€!

이 μˆ˜μ • 사항을 2.11 릴리슀둜 λ°± 포트 ν•  κΈ°νšŒκ°€ μžˆμŠ΅λ‹ˆκΉŒ?

λ„€, 쒋은 생각이라고 μƒκ°ν•©λ‹ˆλ‹€.

이와 v0.2.9 +μ—μ„œ 주석 된 것 κ°™μŠ΅λ‹ˆλ‹€ 27c0f57 및 9b21d93 0.3.x μ‹œλ¦¬μ¦ˆ.

@rwjblue κ°€ 2.11 λ˜λŠ” 2.10으둜 λ‹€μ‹œ νŒ¨μΉ˜λ©λ‹ˆκΉŒ? μ–΄λ–€ λ²„μ „μ—μ„œ μ–΄λ–€ 버그가 νŒ¨μΉ˜λ˜λŠ”μ§€ κ²°μ •ν•˜λŠ” 과정을 잘 λͺ¨λ₯΄κ² μŠ΅λ‹ˆλ‹€.

2.11.1μ—μ„œ μˆ˜μ • 됨

이 λ¬Έμ œκ°€ beta.1κ³Ό λ‹€λ₯Έ λ°©μ‹μœΌλ‘œ μˆ˜μ • λ˜μ—ˆμŠ΅λ‹ˆκΉŒ? 방금 2.11.1을 μ‚¬μš©ν•΄ λ³΄μ•˜μ§€λ§Œ μ—¬μ „νžˆ "hotel.error"에 λŒ€ν•œ 쀑볡 경둜 였λ₯˜κ°€ λ°œμƒν•˜μ§€λ§Œ λ² νƒ€λŠ” 그렇지 μ•ŠμŠ΅λ‹ˆλ‹€.

@Glennvd- 예, λ‹€λ₯Έ λ²„μ „μ˜ 경둜 μΈμ‹κΈ°μž…λ‹ˆλ‹€ (2.11의 경우 0.2.9, 2.12의 경우 0.3). λ‚΄κ°€ μ–΄λ–»κ²Œ λ“  이것을 망 쳀을 κ°€λŠ₯성이 μžˆμŠ΅λ‹ˆλ‹€. 2.11μ—μ„œ 얻은 였λ₯˜ 및 μŠ€νƒ 좔적을 곡유 ν•  수 μžˆμŠ΅λ‹ˆκΉŒ? λ˜ν•œ νšŒμ „ 및 / λ˜λŠ” 데λͺ¨ μ €μž₯μ†Œκ°€ κ°€λŠ₯ν•©λ‹ˆκΉŒ? λ‚΄κ°€ 뭘 잘λͺ»ν–ˆλŠ”지 μ•Œμ•„ λ‚΄λ©΄ 2.11.2λ₯Ό λ¦΄λ¦¬μŠ€ν•˜κ²Œλ˜μ–΄ κΈ°μ©λ‹ˆλ‹€ ..

@rwjblue 여기에 νŠΈμœ„λ“€μ΄ 있으며 μ˜¬λ°”λ₯Έ 엠버 λ²„μ „μœΌλ‘œ λ³€κ²½ν•΄μ•Όν•©λ‹ˆλ‹€ https://ember-twiddle.com/e4b8412bf5629483f94276a001598571

μ•„λž˜μ˜ 전체 μŠ€νƒ 좔적 (λ‚΄ μ•±μ—μ„œ).
add (ember.debug.js:55618) (anonymous) (ember.debug.js:57247) (anonymous) (ember.debug.js:55191) eachRoute (ember.debug.js:55179) eachRoute (ember.debug.js:55177) eachRoute (ember.debug.js:55177) map (ember.debug.js:55190) map (ember.debug.js:57244) _initRouterJs (ember.debug.js:27511) setupRouter (ember.debug.js:27606) startRouting (ember.debug.js:27592) startRouting (ember.debug.js:2887) didBecomeReady (ember.debug.js:3867) invoke (ember.debug.js:337) flush (ember.debug.js:405) flush (ember.debug.js:529) end (ember.debug.js:599) run (ember.debug.js:722) join (ember.debug.js:744) run.join (ember.debug.js:22286) (anonymous) (ember.debug.js:22349) mightThrow (jquery.js:3570) process (jquery.js:3638) nrWrapper ((index):97)
였λ₯˜λŠ” μ—¬μ „νžˆ λ™μΌν•œ Uncaught Error: You may not add a duplicate route named 였λ₯˜ .

@rwjblue μ‹€ν–‰

grep --recursive "RouteRecognizer.VERSION" node_modules/ember-source

보고

node_modules/ember-source/dist/ember.debug.js:RouteRecognizer.VERSION = '0.2.8';
node_modules/ember-source/dist/ember.js:RouteRecognizer.VERSION = '0.2.8';
node_modules/ember-source/dist/ember.prod.js:RouteRecognizer.VERSION = '0.2.8';

예, λ¬Έμ œλŠ” [email protected] κ°€ 0.2.8의 dist 좜λ ₯κ³Ό ν•¨κ»˜ μΆœμ‹œλ˜μ—ˆλ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€. μž‘μ—… μ€‘μž…λ‹ˆλ‹€ ...

@rwjblue ,
ν•„μš”ν•œ 것이 있으면 μ•Œλ €μ£Όμ„Έμš”!

μ’‹μ•„, μ—…λ°μ΄νŠΈ 된 dist 좜λ ₯으둜 [email protected]을 릴리슀 ν•œ λ‹€μŒ 릴리슀 브랜치 (https://github.com/emberjs/ember.js/commit/6c7e6950f127aa31912b5729971703c0c9615655)μ—μ„œ μΆ©λŒν–ˆκ³  λΉŒλ“œ 좜λ ₯μ—μ„œ β€‹β€‹ν™•μΈν–ˆμŠ΅λ‹ˆλ‹€. (https://github.com/components/ember/commit/4a9c7361f4f546daf3ad342da6d196b5b4b6bf20).

그런 λ‹€μŒ μœ„μ˜ @Glennvdκ°€ 곡유 ν•œ twiddle둜 release λΆ„κΈ°λ₯Ό μ‚¬μš©ν•  λ•Œ μ–΄μ„€ μ…˜μ΄ λ°œμƒν•˜μ§€ μ•ŠλŠ”λ‹€λŠ” 것을 ν™•μΈν–ˆμŠ΅λ‹ˆλ‹€ (μ•± λΆ€νŒ…).

λ‹€λ₯Έ μ‚¬λžŒμ΄ λ‚˜λ₯Ό μ—¬κΈ°μ—μ„œ μ˜¨μ „ν•˜κ²Œ 확인할 수 μžˆλ‹€λ©΄ 2.11.2λ₯Ό 릴리슀 ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

κ·Έ μœ„μ—.

@rwjblue λ‚΄
λ‚΄ ν”„λ‘œμ νŠΈλ₯Ό κ΅¬μΆ•ν•˜λ €κ³ ν•©λ‹ˆλ‹€.

devDependencies: {
// ...
"ember-source": "git://github.com/emberjs/ember.js.git#6c7e6950f127aa31912b5729971703c0c9615655"
// ...

κ·ΈλŸ¬λ‚˜ 그것은 μ‹€νŒ¨ν•©λ‹ˆλ‹€

$ ember build
β ‹ Building
Cannot find module 'node_modules/ember-source/dist/ember-template-compiler.js'

λ‚΄κ°€ λ„λŒ€μ²΄ β€‹β€‹λ­˜ 잘λͺ»ν•˜κ³ μžˆλŠ” κ²λ‹ˆκΉŒ :)?

@gmaliar ember-source μ—λŠ” μ €μž₯μ†Œμ— λΉŒλ“œ μ•„ν‹°νŒ©νŠΈκ°€ μ—†μœΌλ―€λ‘œ bower νƒœκ·Έλ₯Ό μ‚¬μš©ν•˜κ±°λ‚˜ emberλ₯Ό 둜컬둜 볡제, λΉŒλ“œ 및 λ§ν¬ν•΄μ•Όν•©λ‹ˆλ‹€.

κ°μ‚¬ν•©λ‹ˆλ‹€ @locks ,
@rwjblue μž‘λ™ν•˜λŠ”μ§€ 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.

닫을 수 있으며 2.11.2 μ—μ„œ μ œλŒ€λ‘œ μž‘λ™ν•©λ‹ˆλ‹€.

확인 ν•΄μ£Όμ…”μ„œ κ°μ‚¬ν•©λ‹ˆλ‹€!

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰