rancher 修改ui-banners 报错问题的调试与跟踪

举报
拿我格子衫来 发表于 2022/03/18 01:13:08 2022/03/18
【摘要】  如果在 ui-banners的编辑框里填写  { banner:{background:red} }   则会报错   并且无法reload  无法退出。 如果处于登录状态可以通过/v3/settings/ui-banners 来修改值   报错...

 如果在 ui-banners的编辑框里填写 

{ banner:{background:red} }
 

 

则会报错

 

并且无法reload  无法退出。

如果处于登录状态可以通过/v3/settings/ui-banners 来修改值

 

报错是因为填写的内容无法转换为json,导致系统无法使用。

应该如此写


  
  1. {
  2. "banner": {
  3. "background":"red"
  4. }
  5. }

 

 

 

首先根据路由  /g/settings/advanced 找到  目录 lib\global-admin\addon\settings

在其中找到

advanced/template.hbs

以下是内容

{{settings/danger-zone}}
 

搜索 settings/danger-zone 组件

 

指向

lib\shared\addon\components\settings\danger-zone

 

由template.hbs内容 找到 action-menu 组件

由 action-menu 找到 lib\shared\addon\components\action-menu-item

 

这里是 点击编辑菜单,的触发逻辑

不过这里我有点不懂


  
  1. if (this.action) {
  2. this.action(actionArg);
  3. }

this.action 没有找到定义的入口,猜猜是去执行一个全局的函数,这个全局的函数又依赖另一个全局的变量。从而能够正确显示出编辑ui-banners的模态框。 真扯啊、、、

 

所有ui-banners的编辑模态框是这个组件

app\components\modal-edit-setting 

是根据 modalEditSetting.title 进行全局搜索 找到的

这里便是编辑ui-banner的编辑组件区域

 

component.js 中的save函数编辑点击保存 的执行函数。

所有要在save执行之前进行 json格式的判断.

已经给rancher 提了一个issues,目前还没得到回复。

没回复 的话,抽时间自己提个PR吧。

祝各位在rancher的道路上越走越顺。

 


  
  1. let uiBannersValue = null;
  2. if (normalizeName(get(this, 'model.key')) === 'ui-banners') {
  3. try {
  4. uiBannersValue = get(this, 'value');
  5. uiBannersValue = JSON.parse(uiBannersValue)
  6. } catch (error) {
  7. console.log(uiBannersValue, error);
  8. btnCb(false);
  9. return false;
  10. }
  11. }

 

 

文章来源: fizzz.blog.csdn.net,作者:拿我格子衫来,版权归原作者所有,如需转载,请联系作者。

原文链接:fizzz.blog.csdn.net/article/details/108661894

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。