React ProLayout組件自定義菜單導航menuDataRender不顯示問題解決方案,React : cannot add property 'X', object is not extensible


如題:React ProLayout組件自定義菜單導航 menuDataRender 不顯示問題解決方案

解決方案:1、將ProLayout里面新增menu={{ loading }}

     2、將config/defaulSettings.js中的menu給注釋掉

 const [loading, setLoading] = useState(true);
 const [menuData, setMenuData] = useState([])
 useEffect(() => {
  const menus = [];  // 模擬數據
  
  setMenuData(menus)
  setLoading(false)
 }, [])

<ProLayout
  ...
  menu={{loading}}
  menuDataRender={() => menuData}
  ...             
>

額外補充:

一: 如果注釋掉defaultSettings中的menu報錯提示,這需要本地本地翻譯語言包進行補充,

  Missing message: “menu.xxx“ for locale: “zh-CN“, using default message as fallback

  在locales/zh-CN/menu.js中,補充menu.xxx: xxx(導航欄顯示的名稱),如:'menu.運營計划.添加推送': '添加推送',

 二:報錯 React : cannot add property 'X', object is not extensible

  這提示該對象不能直接添加屬性 ‘X’, 需要進行解構后才可以,可以是使用 JSON.parse(JSON.stringify(obj)),或者 Object.assgin({}, obj)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM