草庐IT

prop-types

全部标签

javascript - 当在 react 组件中作为 Prop 传递时,如何模拟函数并测试它们是否被调用?

我正在关注此stackoverflow答案中的示例-TestaReactComponentfunctionwithJest.我有一个示例组件和测试设置。该组件在加载到App.js中时可以正常工作。组件-importReact,{PropTypes,Component}from'react';exportdefaultclassExampleModuleextendsComponent{staticpropTypes={onAction:PropTypes.func,}staticdefaultProps={onAction:()=>{console.log("InonAction");

javascript - 动态创建脚本时还需要 "script.type=' text/javascript吗?

代码是这样的:varscript=document.createElement('script');//script.type='text/javascript';//doIneedthis?script.src=src;document.body.appendChild(script);第二行已经被注释掉了,因为有它没有什么区别。还是我遗漏了什么?谢谢, 最佳答案 否:type的默认值已设置为JavaScript(“text/javascript”)。type属性是SCRIPT标签的属性,例如允许Vbscript,只有IE支持。t

javascript - React 路由器 - 将路由上的 Prop 传递给子组件

有人可以告诉我最好的方法吗?我想将页面标题Prop从我的路线传递到我的标题子组件中。这是我的路线:varsampleApp=React.createClass({render:function(){return();},});varroutes=();Router.run(routes,function(Handler){varmountNode=document.getElementById('app');React.render(,mountNode);});我想像这样在路由中传递我的页面标题作为Prop:到我的头部组件:varHeader=React.createClass({r

javascript - ReactJs this.props.router 未定义

你好,我正在学习Reactjs,我遇到了一个问题。当我尝试使用React路由器更改回主页时,出现以下错误:UncaughtTypeError:Cannotreadproperty'push'ofundefined这是我的代码,如您所见,我正在调用导航函数:我的带有路由器的client.js:如果我将this.props.router.push('/');替换为this.props.history.push('/');它工作正常.可能是什么问题? 最佳答案 您缺少调用super()的构造方法。super()调用父类的构造函数,需要将父

javascript - Jquery:如何使用 <input type "value"> 字段的 ="file"动态显示图像

我想知道是否有一种方法可以动态显示用户刚刚上传到inputtype="file"字段的图像。例如,到目前为止我有以下代码:image_upload.html上传.js$(document).ready(function(){$("#id_image").change(file_select);});functionfile_select(event){$("#uploaded_image").attr("src",$("#id_image").val());}所以我基本上想显示用户刚刚上传到Field上的图片。当然,我知道如果用户已经提交表单并且图像已经在我的数据库服务器中,我可以轻松

javascript - react this.props.params undefined

我无法通过id到我的产品页面,我尝试了所有方法并搜索了答案,但它仍然不起作用。这是我的index.js:importReactfrom"react";import{render}from"react-dom";import{Router,Route,IndexRoute,hashHistory}from"react-router";import{Menu}from'./components/Menu';import{MainPage}from'./components/MainPage';import{DetailsProduct}from'./components/DetailsPr

javascript - "Input type file.files"选择器在 jQuery 中不起作用

我正在尝试使用以下代码在HTML输入中获取有关正在上传的文件的信息:$(document).ready(function(){$('#btn').on('click',function(){file_size=$("#my_file").files[0].size;alert(file_size);});});但是不行,控制台返回:$("#my_file").filesisundefined 最佳答案 $("#my_file")是一个jQuery对象,jQuery对象没有属性files...要从jQuery中获取DOM元素,请执行$

javascript - 将类型定义添加到将 props 注入(inject)组件的 HOC

我有一个以下列方式(无类型)实现的“高阶组件”。constThemeable=(mapThemeToProps)=>{return(WrappedComponent)=>{constthemedComponent=(props,{theme:appTheme})=>{return}themedComponent.contextTypes={theme:PropTypes.object};returnthemedComponent;}}总结一下它的作用,它需要一个mapThemeToProps函数。这将接收通过合并defaultTheme(由我的库提供)和appTheme(由ThemeP

javascript - 将 Flow 用于样式化组件 Props

所以我一直在研究JavaScript中的类型系统,大部分情况下一切正常,但是样式组件存在问题。我似乎找不到将流程应用于样式化组件的Prop的好方法。到目前为止,我看到的唯一解决方案是:exporttypeButtonPropTypes=ReactPropTypes&{styleType:'safe'|'info'|'warning'|'danger'|'link',isPill:boolean,isThin:boolean,};exportconstButtonStyled=styled.button`${generateBaseStyles}${hoverStyles}${fillS

javascript - 巴别塔 : Function parameter types in ES6

如果我编写以下代码并通过Babel(6.5.0)转译它,它会正常工作。functionfoo(first:string,second:number){//codehere}:string和:number只是从转译的ES5代码中删除。如果我使用错误的参数类型调用该函数,它不会导致任何错误/警告。即使没有任何功能,它们也能提供信息。我无法在互联网上找到有关ES6参数类型的正确信息。参数类型甚至是ES6的一部分吗?编辑:这个问题在下面的评论中得到了回答,我根据他们总结了官方答案。 最佳答案 感谢JoeClay,Bergi和FelixKli