You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React组件中img标签src属性URL如何传参及解决invalid src报错

错误原因

你在给<img>的src属性赋值时,直接传入了readySRC函数本身,而src仅支持接收字符串格式的图片链接,接收函数类型值时就会触发invalid src报错。同时readySRC是需要传入city参数才能正常生成链接的函数,未传参直接调用也会得到无效值。

解决方法

调用readySRC函数并传入对应的城市参数,拿到生成后的URL字符串再赋值给src即可。同时建议给cityToCodeMatcher增加默认返回值,避免未匹配到城市时生成无效链接。

修正后的代码示例

import React, {useState,useEffect} from 'react';

// 此处保留你的其他业务逻辑

const cityToCodeMatcher = (city) => {
    let code;
    if(city === "Kolkata") code='IN';
    else if(city === "Tokyo") code='JP';
    // 增加兜底逻辑,避免未匹配城市时返回undefined
    else code = 'default';
    return code;
}

const readySRC = (city) => {
    let temp =  "https://www.countryflags.io/".concat(cityToCodeMatcher(city));
    return temp.concat("/flat/64.png");
}

return(
    <>
    <div className="timezone">       
       <div>
            {/* 调用readySRC并传入你组件内对应的城市变量即可,示例中city为你业务中存储的城市状态参数 */}
            <img src={readySRC(city)} alt="Country flags"/>
        </div>
    </div>
    </>
);

}
export default TimeZoneComponent;

内容的提问来源于stack exchange,提问作者MagnusEffect

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.09 05:24:03