기본 스크립트로 샘플 응용 프로그램을 만들려고합니다. 나는 http://docs.telerik.com/devtools/nativescript-ui/Controls/Angular/SideDrawer/getting-started를 참조하여 다음과 같은 방법으로 sidemenu에 대한 RadSideDrawer을 사용 : 내 app.component.ts에서NativeScript : toggleDrawerState에 함수 오류가 없습니다.
<RadSideDrawer [transition]="RevealTransition" #drawer>
<StackLayout tkDrawerContent class="sideStackLayout">
<StackLayout class="sideTitleStackLayout">
<Label text="Navigation Menu"></Label>
</StackLayout>
<StackLayout class="sideStackLayout">
<Label text="Primary" class="sideLabel sideLightGrayLabel"></Label>
<Label text="Social" class="sideLabel"></Label>
<Label text="Promotions" class="sideLabel"></Label>
<Label text="Labels" class="sideLabel sideLightGrayLabel"></Label>
<Label text="Important" class="sideLabel"></Label>
<Label text="Starred" class="sideLabel"></Label>
<Label text="Sent Mail" class="sideLabel"></Label>
<Label text="Drafts" class="sideLabel"></Label>
</StackLayout>
</StackLayout>
<StackLayout tkMainContent>
<GridLayout rows="*">
<page-router-outlet ></page-router-outlet>
<ActivityIndicator #activityIndicator horizontalAlignment="center" verticalAlignment="center" width="100" height="100" row="0"></ActivityIndicator>
</GridLayout>
</StackLayout>
</RadSideDrawer>
은, 내가 준 :
import {RadSideDrawer} from "nativescript-telerik-ui/sidedrawer";
@ViewChild("drawer") drawer : ElementRef;
및
public toggleDrawer(){
let drawer = <RadSideDrawer>this.drawer.nativeElement;
drawer.toggleDrawerState();
}
문제를 toggleDrawer()를 실행할 때마다 오류가 발생합니다.
drawer.toggleDrawerState not a function.
무엇이 잘못 될 수 있습니까? this.drawer를 [object Object]로, this.drawer.nativeElement를 ProxyViewContainer (5)로 가져오고 있습니다. 이는 요소를 식별하지만 toggleDrawerState()를 호출 할 수 없음을 의미합니다.
또한 스타일이 왜곡되어 이제 기본보기에 tkDrawerContent가 나열되고 tkMainContent에 지정된 원본 페이지 내용을 볼 수 없습니다.
유감을 찾을 수 있지만'.nativeElement'을받을 수 있나요 어디 어디 nativescript의 API 참조 –
체크 아웃 제 4 장에 표시되지 않기 때문에 튜토리얼 https://docs.nativescript.org/tutorial/ng-chapter-4. 이 메서드를 사용하여 다른 요소를 얻고 있는데, RadSideDrawer에만 문제가 있습니다. –
ElementRef의 속성 –