打开页面时,根据后端返回的的值isRequired,设置页面的checkbox标签的勾选状态,并给隐藏的text标签的value赋值,以便于在提交页面时把isRequired再返回给后端 2. minimal pull-left Grandpa isRequiredCheck" οnclick="checkboxOnclick(this)"> <input type="text" name="<em>isRequired</em> ="" >
=False) 没有影响,值被初始化为默认值 添加必须的成员变量(System.Runtime.Serialization.DataMemberAttribute特性中IsRequired=True) )] public int Id { get; set; } [DataMember(IsRequired = false)] public String 原先是不带City属性,下面给他添加IsRequired的属性。 [DataContract] public class Employee { [DataMember(IsRequired = true)] public int Id { get; set; } [DataMember(IsRequired = false)] public String Name { get; set;
, title: React.PropTypes.string.isRequired, name: React.PropTypes.string.isRequired, controlFunc , title: React.PropTypes.string.isRequired, name: React.PropTypes.string.isRequired, controlFunc (['checkbox', 'radio']).isRequired, setName: React.PropTypes.string.isRequired, options: React.PropTypes.array.isRequired , name: React.PropTypes.string.isRequired, content: React.PropTypes.string.isRequired, resize: , rows: React.PropTypes.number.isRequired, name: React.PropTypes.string.isRequired, content: React.PropTypes.string.isRequired
, maxLoops: React.PropTypes.number.isRequired, posterFrameSrc: React.PropTypes.string.isRequired , videoSrc: React.PropTypes.string.isRequired, }, }); 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 autoPlay: false, maxLoops: 10, } static propTypes = { autoPlay: React.PropTypes.bool.isRequired , maxLoops: React.PropTypes.number.isRequired, posterFrameSrc: React.PropTypes.string.isRequired , videoSrc: React.PropTypes.string.isRequired, } state = { loopsRemaining: this.props.maxLoops
: PropTypes.func.isRequired, disableViewport: PropTypes.func.isRequired, toggleAnnotations: PropTypes.func.isRequired , loadImage: PropTypes.func.isRequired, downloadBlob: PropTypes.func.isRequired, /** A default width & height, between the minimum and maximum size */ defaultSize: PropTypes.number.isRequired, minimumSize: PropTypes.number.isRequired, maximumSize: PropTypes.number.isRequired, canvasClass: PropTypes.string.isRequired, }; export default ViewportDownloadForm;
PropTypes.string } render() { return (
, children: PropTypes.element.isRequired } Provider.childContextTypes = { store: storeShape.isRequired , children: PropTypes.node.isRequired, onClick: PropTypes.func.isRequired } export default Link , completed: PropTypes.bool.isRequired, text: PropTypes.string.isRequired }).isRequired ).isRequired, toggleTodo: PropTypes.func.isRequired } export default TodoList Todo.jsx import React , completed: PropTypes.bool.isRequired, text: PropTypes.string.isRequired } export default Todo
class ShowTheLocation extends React.Component { static propTypes = { match: PropTypes.object.isRequired , location: PropTypes.object.isRequired, history: PropTypes.object.isRequired } render()
console.log(props) super(props) } static propTypes = { name :PropTypes.string.isRequired , sex : PropTypes.string, age : PropTypes.number.isRequired, } static defaultProps ) } Person.propTypes = { name :PropTypes.string.isRequired , sex : PropTypes.string, age : PropTypes.number.isRequired, }
props中的属性值进行类型限制和必要性限制 第一种方式(React v15.5 开始已弃用): Person.propTypes = { name: React.PropTypes.string.isRequired React.PropTypes.number } 第二种方式(新):使用prop-types库进限制(需要引入prop-types库) Person.propTypes = { name: PropTypes.string.isRequired //对标签属性进行类型、必要性的限制 static propTypes = { name:PropTypes.string.isRequired ) } Person.propTypes = { name:PropTypes.string.isRequired
使用 isRequired 定义必填属性。 prop-types' class User extends React.Component { static propTypes = { name: PropTypes.string.isRequired , age: PropTypes.number.isRequired } render() { return ( <>
CustomerPage extends React.Component { static childContextTypes = { page: PropTypes.object.isRequired , pageChange: PropTypes.func.isRequired, activeIndex: PropTypes.number.isRequired, PageLeft class PageLeft extends Component { static contextTypes = { page: PropTypes.object.isRequired , pageChange: PropTypes.func.isRequired, activeIndex: PropTypes.number.isRequired, , pageChange: PropTypes.func.isRequired, activeIndex: PropTypes.number.isRequired,
<StackPanel Grid.IsSharedSizeScope="True"> <kino:FormItem Label="用户名" IsRequired="True"> <TextBox /> </kino:FormItem> <kino:FormItem Label="密码" IsRequired="True"> <PasswordBox FormItem继承ContentControl并提供Label、LabelTemplate、Description和IsRequired四个属性,它的代码本身并不提供其它功能: Label 本来打算让 <PasswordBox kino:Form.Label="密码" kino:Form.IsRequired="True" /> <ComboBox kino:Form.Label="国家与地区 3.2.3 使用附加属性简化XAML 比起用FormItem包装每个表单元素,如果每个TextBox、ComboBox等都有FormItem的Label、<em>IsRequired</em>属性那就简单太多了。
, children: PropTypes.element.isRequired } Provider.childContextTypes = { store: storeShape.isRequired , children: PropTypes.node.isRequired, onClick: PropTypes.func.isRequired } export default Link , completed: PropTypes.bool.isRequired, text: PropTypes.string.isRequired }).isRequired ).isRequired, toggleTodo: PropTypes.func.isRequired } export default TodoList Todo.jsx import React , completed: PropTypes.bool.isRequired, text: PropTypes.string.isRequired } export default Todo
warnAboutReceivingStore() } } } Provider.propTypes = { store: storeShape.isRequired , children: PropTypes.element.isRequired, } Provider.childContextTypes = { [storeKey ]: storeShape.isRequired, [subscriptionKey]: subscriptionShape, } return Provider }
CommentAdd extends Component { //给组件类添加属性 static propTypes = { addComment: PropTypes.func.isRequired ComponentList extends Component { //给组件类添加属性 static protoTypes = { comments: PropTypes.array.isRequired , deleteComment:PropTypes.func.isRequired } render () { const {comments,deleteComment default class CommentItem extends Component { static propTypes = { comment: PropTypes.object.isRequired , deleteComment:PropTypes.func.isRequired, index:PropTypes.number.isRequired }
UserName] [varchar](50) NOT NULL, [PostTime] [datetime] NOT NULL, [Message] [varchar](400) NULL, [IsRequired
warnAboutReceivingStore() } } } Provider.propTypes = { store: storeShape.isRequired , children: PropTypes.element.isRequired, } Provider.childContextTypes = { [storeKey ]: storeShape.isRequired, [subscriptionKey]: subscriptionShape, } return Provider }
class JobStepData : NameTypeConfigurationElement { [ConfigurationProperty("description", IsRequired this["executableFile"] as string; } } [ConfigurationProperty("arguments", IsRequired public class ArgumentEntry : NamedConfigurationElement { [ConfigurationProperty("value", IsRequired public class VariableEntry : NamedConfigurationElement { [ConfigurationProperty("value", IsRequired class BatchJobEntry : NamedConfigurationElement { [ConfigurationProperty("description", IsRequired
), hobby: array<string>().def(() => ['sleep']), father: Object<Man>().def(() => ({...})) } isRequired 必填
{
content: string().isRequired
}
校验函数
instanceOf 校验值是否属于某一类型
class User{ / 需要注意的是,oneOfType 内部接收的是类型, 类型定义的公共函数是无效的
{
key: oneOfType([ string().def('defKey'), number() ]).isRequired // 这里 string().def('defKey') 是无效的,并不能屏蔽 isRequired
}
arrayOf 指定数组类型校验
{
// 单一类型
keys: 内置命名空间 , VueTypes
import VueTypes, {string} from 'vue-types
{
message: VueTypes.string.isRequired