인라인 자바 스크립트로 시간이 지저분 해져서 이제는 모든 js (일부 최소 초기화 코드 제외)를 외부 타이프 스크립트 파일로 옮깁니다. js 코드를 재사용 할 수있게하는 것이 좋겠지 만,이 특정보기에는 매우 구체적입니다. js 코드는 많은 html 요소에 크게 의존합니다. 내가 가지고는이 같은 것입니다 :면도기보기 인라인 자바 스크립트를 외부 타이프 스크립트 파일로 옮깁니다.
module MyModule{
export class SomeClass{
private $counter: any;
private $answers: any;
private $pager: any;
private $anotherSelector1:any;
private $anotherSelector2:any;
private $anotherSelector3:any;
private $anotherSelector4:any;
private someId: number;
constructor(public options: any) {
this.init(options);
}
private init(options) {
//setup objects, callbacks, other init code
}
}
}
나는이처럼 내 cshtml 파일에서 호출 :
$(document).ready(function() {
var instance = new MyModule.SomeClass({
$counter: $('#something'),
$answers: $('#something'),
$pager: $('#something'),
//code omitted for brevity
someId: "@Model.SomeId",
});
});
이 방법이 더 깨끗한 면도칼보기가 발생합니다 비록 나에게 보인다 , typescript 파일은 여전히 html DOM에 많은 의존성을 갖습니다. 내가 제대로하고 있니? 보기에서 html 리팩토링을 고려해야합니까? 또한 cshtml 파일의 init 코드를 ts 파일로 옮겨야합니까? 그렇지 않으면 그대로 두어야합니까? 나는 이와 같은 리팩토링을 할 때 최선의 관행을 찾고있다.