Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/461.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript [反应]如何将道具转换为字符串?_Javascript_Json_Reactjs_Jsx - Fatal编程技术网

Javascript [反应]如何将道具转换为字符串?

Javascript [反应]如何将道具转换为字符串?,javascript,json,reactjs,jsx,Javascript,Json,Reactjs,Jsx,我想创建一个URL链接,但每次我尝试创建它时,它都会显示[object]。如何将{trcode}转换为字符串 代码: function L_MovieList({title, poster, genres, synopsis,language,runtime,year,rating,likes,trcode}) { console.log(likes); console.log("here"+trcode) let url = JSON.stringify({trco

我想创建一个URL链接,但每次我尝试创建它时,它都会显示
[object]
。如何将
{trcode}
转换为字符串

代码:

function L_MovieList({title, poster, genres, synopsis,language,runtime,year,rating,likes,trcode}) {

    console.log(likes);
    console.log("here"+trcode)

    let url = JSON.stringify({trcode});
    let url_path = "http://www.youtube.com/watch?v="+{url};

    return (
        <div className="L_MovieList">
          <a href={url_path}>예고편</a>   
        </div>
    )
}
function L_MovieList({标题、海报、流派、概要、语言、运行时、年份、评级、喜欢、trcode}){
console.log(likes);
console.log(“此处”+trcode)
让url=JSON.stringify({trcode});
让url_路径=”http://www.youtube.com/watch?v=“+{url};
返回(
)
}

我认为函数定义不正确,应该如下所示

function L_MovieList(argListObject) {
    let url = argListObject.trcode;
    let url_path = "http://www.youtube.com/watch?v="+url;

    return (
        <div className="L_MovieList">
          <a href={url_path}>예고편</a>   
        </div>
    )
}

首先,如果
trcode
[object]
开头,它将始终作为
[object]
显示在
控制台.log(“此处”+trcode)
语句中。因为在完成
console.log()
之前,您不会对
[object]
进行字符串化

其次,我怀疑
JSON.stringify()
是否能实现您希望它实现的功能。你看,
[object]
最简单的形式就是键值对的集合。当您对
[对象]
进行字符串化时,它将创建整个对象的字符串表示形式,包括键和值。换句话说,如果这是您的
trcode
对象:

{
    "code" : "lB7p5xeiYpE"
}
然后从
JSON.stringify(trcode)
返回的值将是如下所示的字符串:

{“code”:“lB7p5xeiYpE”}

如果您想在该对象中获取值,最好使用点表示法直接获取该值。所以你会有一行代码,看起来像这样:

让url\u路径=”http://www.youtube.com/watch?v=“+trcode.code

最后,这一行代码:

让url\u路径=”http://www.youtube.com/watch?v=“+{url}

始终“断开”并显示一个
[object]
追加到字符串末尾,因为您正在动态创建一个对象,然后将其连接到字符串末尾

出现此问题的原因是围绕
url
的花括号。这样做的目的是创建一个全新的对象,其内容为
url
。在上面的代码中,
url
应该已经是一个字符串。这就是连接两个字符串的方式(请注意缺少花括号):

让url\u路径=”http://www.youtube.com/watch?v=“+url

JSON.stringify()是否为您工作?
{
    "code" : "lB7p5xeiYpE"
}