首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在react render -Javascript/React中将数组转换为字符串失败

在react render -Javascript/React中将数组转换为字符串失败
EN

Stack Overflow用户
提问于 2018-10-11 04:49:36
回答 3查看 966关注 0票数 2

我想把一个数组属性转换成一个字符串:

代码语言:javascript
复制
   export default class MyComp extends React.Component {
    render() {
        let type = this.props.type; // [".abc",".ded",".ted"];
        newType = type.join();
//o/p: newType= ".abc,.ded,.ted"

console.log(newType) // ".abc,.ded,.ted"
    return (
      <div>
      <input type="file" accept={newType}/> //here throws error 
    </div>
    )

    }

}

export default class SubComp extends React.Component{
   render() {
     <Mycomp type={[".abc",".ded",".ted"]}/>

 }
}

当我试图访问作为accept html的值的newType时,它抛出:TypeError: Cannot read property 'join' of undefined。我在这里检查的一件事是,如果我试图将硬编码值传递给newType,它就能正常工作。只有当我尝试使用.join().toString()将数组转换为字符串时,它才会失败。

代码语言:javascript
复制
render() {
            let type = this.props.type; // [".abc",".ded",".ted"];
            newType = ".abc,.ded,.ted";
        return (
          <div>
          <input type="file" accept={newType}/> //Works Fine!!!! 
        </div>
        )

        }

你知道是什么导致了这个问题吗?

EN

回答 3

Stack Overflow用户

发布于 2018-10-11 05:01:33

您需要使用花括号{}设置您的类型属性,如下所示:

代码语言:javascript
复制
 <Mycomp type={[".abc",".ded",".ted"]}/>
票数 1
EN

Stack Overflow用户

发布于 2018-10-11 05:01:42

你应该像这样把数据传递给道具

代码语言:javascript
复制
export default class MyComp extends React.Component {
    render() {
        let type = this.props.type; // [".abc",".ded",".ted"];
        let newType = type.join()//converts to string: ".abc,.ded,.ted"
    return (
      <div>
      <input type="file" accept={newType}/> //here throws error 
    </div>
    )

    }

}

export default class SubComp extends React.Component{
   render() {
     <Mycomp type={[".abc",".ded",".ted"]}/>

 }
}
票数 1
EN

Stack Overflow用户

发布于 2018-10-11 05:03:15

尝试将数组传递给属性,如下所示

代码语言:javascript
复制
<Mycomp type={[".abc",".ded",".ted"]} />
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52748581

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档