Reactjs ; } openCalendar(){ this.calendar&&this.calendar.open(); } //在渲染函数中 render(){ //这是一个可选属性,我用它来显示customI18n对象的结构。 让customI18n={ ‘w’:[‘星期一’、‘星期二’、‘星期三’、‘星期四’、‘星期五’、‘星期六’、‘星期日’], “工作日”:[“周一”、“周二”、“周三”、“周四”、“周五”、“周六”、“周日”], “文本”:{ “开始”:“签入”, “结束”:“签出”, “日期”:“日期”, “保存”:“确认”, “清除”:“重置” }, 'date':'DD/MM'//日期格式 }; //也是可选属性。 让颜色={ 子颜色:“#f0” }; 返回( {this.calendar=calendar;}} customI18n={customI18n} 颜色={color} format=“YYYYMMDD” minDate=“20170510” maxDate=“20180312” startDate={this.state.startDate} endDate={this.state.endDate} onConfirm={this.confirmDate} /> ); } }
当您缺少结束方括号或额外方括号时,将生成此类错误,因此按ctrl+shift+f将代码格式化为可视代码,以查看缺少的方括号。这是一个语法错误。发布整个代码。@hongdeveloper您好,我发布的完整代码在您的代码中缺少最终“}”。*不变冲突:元素类型无效:需要字符串(对于内置的“组件”)或类/函数(对于复合组件)但是得到:object。您可能忘记了从定义组件的文件中导出组件,或者您可能混淆了默认导入和命名导入。“我明白了,您可以帮助您导入ActionButton,但您在render方法中只使用了一些未知的按钮组件。考虑用ActuutBut纽替换按钮。@文达我更新了答案,所以你可以只复制代码。我试过了,但是我仍然得到相同的“不变违反”。error@Venda,我喜欢吃零食,这是正确的。请参阅此链接(),您应该重新加载项目。@Venda,您没有使用Reactjs ; } openCalendar(){ this.calendar&&this.calendar.open(); } //在渲染函数中 render(){ //这是一个可选属性,我用它来显示customI18n对象的结构。 让customI18n={ ‘w’:[‘星期一’、‘星期二’、‘星期三’、‘星期四’、‘星期五’、‘星期六’、‘星期日’], “工作日”:[“周一”、“周二”、“周三”、“周四”、“周五”、“周六”、“周日”], “文本”:{ “开始”:“签入”, “结束”:“签出”, “日期”:“日期”, “保存”:“确认”, “清除”:“重置” }, 'date':'DD/MM'//日期格式 }; //也是可选属性。 让颜色={ 子颜色:“#f0” }; 返回( {this.calendar=calendar;}} customI18n={customI18n} 颜色={color} format=“YYYYMMDD” minDate=“20170510” maxDate=“20180312” startDate={this.state.startDate} endDate={this.state.endDate} onConfirm={this.confirmDate} /> ); } },reactjs,react-native,npm,Reactjs,React Native,Npm,当您缺少结束方括号或额外方括号时,将生成此类错误,因此按ctrl+shift+f将代码格式化为可视代码,以查看缺少的方括号。这是一个语法错误。发布整个代码。@hongdeveloper您好,我发布的完整代码在您的代码中缺少最终“}”。*不变冲突:元素类型无效:需要字符串(对于内置的“组件”)或类/函数(对于复合组件)但是得到:object。您可能忘记了从定义组件的文件中导出组件,或者您可能混淆了默认导入和命名导入。“我明白了,您可以帮助您导入ActionButton,但您在render方法中只使
图标
,请将其删除。它可能是您的react原生向量图标
not链接
npm install --save react-native-calendar-select
import React, { Component } from 'react';
import ActionButton from 'react-native-action-button';
import Icon from 'react-native-vector-icons/Ionicons';
import { StyleSheet, Text, View } from 'react-native';
import Calendar from 'react-native-calendar-select';
class YourComponent extends Component {
constructor(props) {
super(props);
this.state = {
startDate: new Date(2017, 6, 12),
endDate: new Date(2017, 8, 2)
};
this.confirmDate = this.confirmDate.bind(this);
this.openCalendar = this.openCalendar.bind(this);
}
// when confirm button is clicked, an object is conveyed to outer component
// contains following property:
// startDate [Date Object], endDate [Date Object]
// startMoment [Moment Object], endMoment [Moment Object]
confirmDate({ startDate, endDate, startMoment, endMoment }) {
this.setState({
startDate,
endDate
});
}
openCalendar() {
this.calendar && this.calendar.open();
}
// in render function
render() {
// It's an optional property, I use this to show the structure of customI18n object.
let customI18n = {
'w': ['', 'Mon', 'Tues', 'Wed', 'Thur', 'Fri', 'Sat', 'Sun'],
'weekday': ['', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'],
'text': {
'start': 'Check in',
'end': 'Check out',
'date': 'Date',
'save': 'Confirm',
'clear': 'Reset'
},
'date': 'DD / MM' // date format
};
// optional property, too.
let color = {
subColor: '#f0f0f0'
};
return (
<View>
<Button title="Open Calendar" onPress={this.openCalendar} />
<Calendar
i18n="en"
ref={(calendar) => { this.calendar = calendar; }}
customI18n={customI18n}
color={color}
format="YYYYMMDD"
minDate="20170510"
maxDate="20180312"
startDate={this.state.startDate}
endDate={this.state.endDate}
onConfirm={this.confirmDate}
/>
</View>
);
}
import React, { Component } from 'react';
import ActionButton from 'react-native-action-button';
import Icon from 'react-native-vector-icons/Ionicons';
import { StyleSheet, Text, View } from 'react-native';
import Calendar from 'react-native-calendar-select';
class YourComponent extends Component {
constructor(props) {
super(props);
this.state = {
startDate: new Date(2017, 6, 12),
endDate: new Date(2017, 8, 2)
};
this.confirmDate = this.confirmDate.bind(this);
this.openCalendar = this.openCalendar.bind(this);
}
// when confirm button is clicked, an object is conveyed to outer component
// contains following property:
// startDate [Date Object], endDate [Date Object]
// startMoment [Moment Object], endMoment [Moment Object]
confirmDate({startDate, endDate, startMoment, endMoment}) {
this.setState({
startDate,
endDate
});
}
openCalendar() {
this.calendar && this.calendar.open();
}
// in render function
render() {
// It's an optional property, I use this to show the structure of customI18n object.
let customI18n = {
'w': ['', 'Mon', 'Tues', 'Wed', 'Thur', 'Fri', 'Sat', 'Sun'],
'weekday': ['', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'],
'text': {
'start': 'Check in',
'end': 'Check out',
'date': 'Date',
'save': 'Confirm',
'clear': 'Reset'
},
'date': 'DD / MM' // date format
};
// optional property, too.
let color = {
subColor: '#f0f0f0'
};
return (
<View>
<ActionButton
buttonColor="rgba(231,76,60,1)"
onPress={this.openCalendar}
/>
<Calendar
i18n="en"
ref={(calendar) => {this.calendar = calendar;}}
customI18n={customI18n}
color={color}
format="YYYYMMDD"
minDate="20170510"
maxDate="20180312"
startDate={this.state.startDate}
endDate={this.state.endDate}
onConfirm={this.confirmDate}
/>
</View>
);
}
}
import React, { Component } from 'react';
import { StyleSheet, Text, View, Button } from 'react-native';
import Calendar from 'react-native-calendar-select';
class YourComponent extends Component {
constructor(props) {
super(props);
this.state = {
startDate: new Date(2017, 6, 12),
endDate: new Date(2017, 8, 2)
};
this.confirmDate = this.confirmDate.bind(this);
this.openCalendar = this.openCalendar.bind(this);
}
// when confirm button is clicked, an object is conveyed to outer component
// contains following property:
// startDate [Date Object], endDate [Date Object]
// startMoment [Moment Object], endMoment [Moment Object]
confirmDate({ startDate, endDate, startMoment, endMoment }) {
this.setState({
startDate,
endDate
});
}
openCalendar() {
this.calendar && this.calendar.open();
}
// in render function
render() {
// It's an optional property, I use this to show the structure of customI18n object.
let customI18n = {
'w': ['', 'Mon', 'Tues', 'Wed', 'Thur', 'Fri', 'Sat', 'Sun'],
'weekday': ['', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'],
'text': {
'start': 'Check in',
'end': 'Check out',
'date': 'Date',
'save': 'Confirm',
'clear': 'Reset'
},
'date': 'DD / MM' // date format
};
// optional property, too.
let color = {
subColor: '#f0f0f0'
};
return (
<View>
<Button title="Open Calendar" onPress={this.openCalendar} />
<Calendar
i18n="en"
ref={(calendar) => { this.calendar = calendar; }}
customI18n={customI18n}
color={color}
format="YYYYMMDD"
minDate="20170510"
maxDate="20180312"
startDate={this.state.startDate}
endDate={this.state.endDate}
onConfirm={this.confirmDate}
/>
</View>
);
}
}