Câu hỏi: MMA301 Phát triển ứng dụng di động đa nền tảng – Bộ ôn tập thi lại số 2
50 câu trắc nghiệm kèm lời giải của môn Multiplatform Mobile App Development - Phát triển ứng dụng di động đa nền tảng, xếp đúng thứ tự trong đề.
Danh sách câu hỏi
useReducerReduxMobXRealmĐáp án đúng: "const Counter = () => { const [count, setCount] = useState(0);
return <View><Text>{
count
}</Text>
<Button title="Increment" onPress={
() =>setCount(count + 1)} /></View>; };". useState(0) trả về mảng hai phần tử gồm giá trị hiện tại và hàm cập nhật, nên phải tách bằng destructuring thành count và setCount. Mỗi lần bấm, hàm mũi tên gọi setCount(count + 1), React lưu giá trị mới và render lại Counter nên Text hiện số đã tăng. Bản có "onPress={() => count++}" sai vì count lúc này là cả mảng do useState trả về chứ không phải con số, lại khai báo bằng const nên count++ gây lỗi gán lại hằng, và tự đổi biến cục bộ cũng không báo cho React render lại. Bản có "onPress={setCount}" truyền thẳng setCount làm trình xử lý, nên Button gọi nó với đối tượng sự kiện chạm và count bị gán thành đối tượng đó thay vì tăng thêm 1. Bản có "onPress={() => setCount(count)}" gọi setCount trong khi chưa hề khai báo vì không destructure, nên báo lỗi không tìm thấy biến; kể cả có khai báo thì đặt lại đúng giá trị cũ cũng không tăng.
componentShouldMount()componentWillUpdate()shouldComponentUpdate()componentUpdate()horizontalscrollDirectionscrollEnableddirectionimport React, { Component } from 'react';
import { Text, View } from 'react-native';
class Header extends Component {
render() {
return (
<View>
<Text>This is header!</Text>
</View>
);
}
}
class Footer extends Component {
render() {
return (
<View>
<Text> This is footer!</Text>
</View>
);
}
}
class MainScreen extends Component {
render() {
return (
<View>
<Header />
<Footer />
</View>
);
}
}
export default MainScreen;drawerWidthrenderNavigationViewdrawerContentrenderDrawer