简体   繁体   English

在SCA中找不到/看不到主干视图

[英]Backbone view not found/visible in SCA

I've overridden the ItemDetails module and I've added a new view it. 我已覆盖ItemDetails模块,并ItemDetails添加了新视图。 But now when I run my SCA Mont Blanc website locally the website fails to load (I get a white screen) and the following error in the browser console - fails to load my view I added. 但是现在当我在本地运行SCA Mont Blanc网站时,该网站无法加载(出现白屏),并且浏览器控制台中出现以下错误-无法加载我添加的视图。

Failed to load resource: the server responded with a status of 404 (Not Found) ItemDetails.PBT.View.js 加载资源失败:服务器响应状态为404(未找到)ItemDetails.PBT.View.js

What do I need to do to add a new view to a overridden module? 我需要怎么做才能向覆盖的模块添加新视图?

What I have done: 我做了什么:

  • Create the view file in modules/mymodules/ItemDetailsOverrides@1.0.0/Javascript . modules/mymodules/ItemDetailsOverrides@1.0.0/Javascript创建视图文件。 The view (and filename) name is ItemDetails.PBT.View I have also created a simple template for the view in the templates folder. 视图(和文件名)的名称为ItemDetails.PBT.View我还在模板文件夹中为视图创建了一个简单的模板。
  • Added my module override to distro.json in the modules dictionary. modules字典distro.json我的模块覆盖添加到distro.json中。 Note the original ItemDetails is still included in the file aswell 注意原始的ItemDetails也仍然包含在文件中
  • Include my new view in modules/mymodules/ItemDetailsOverrides@1.0.0/Javascript/ItemDetails.View.js both in the dependencies and in the function as a parameter. 在依赖项和函数中都将我的新视图包含在modules/mymodules/ItemDetailsOverrides@1.0.0/Javascript/ItemDetails.View.js中。
  • In ns.package.json I have specified that I am overridding the modules/suitecommerce/ItemDetailsOverrides@2.1.0/Javascript/ItemDetails.View.js with modules/mymodules/ItemDetailsOverrides@1.0.0/Javascript/ItemDetails.View.js . ns.package.json我指定了我将modules/suitecommerce/ItemDetailsOverrides@2.1.0/Javascript/ItemDetails.View.js覆盖为modules/mymodules/ItemDetailsOverrides@1.0.0/Javascript/ItemDetails.View.js

What else do I need to do?? 我还需要做什么? Specific answers would be greatly appreciated. 具体答案将不胜感激。

The 404 error could be caused by several reasons: 404错误可能是由以下几种原因引起的:

1- If you are overriding a view you can't require it since it doesn't exist anymore. 1-如果要覆盖视图,则不再需要它,因为它不再存在。

2- Is ItemDetailsOverrides part of suitecommerce modules or are you trying to override modules/suitecommerce/ItemDetails@2.1.0/Javascript/ItemDetails.View.js ? 2-ItemDetailsOverrides是suitecommerce模块的一部分,还是您要覆盖modules/suitecommerce/ItemDetails@2.1.0/Javascript/ItemDetails.View.js

3- Did you add the view to the javascript dependencies in the distro.json ? 3-您是否将视图添加到distro.json的javascript依赖项中?

4- If you are "extending" the original ItemDetails.View.js in your module there's no need to override it (Probably you will need to change the name to something like ItemDetails.View.Extended). 4-如果您要“扩展”模块中的原始ItemDetails.View.js,则无需覆盖它(可能需要将名称更改为类似ItemDetails.View.Extended的名称)。 You can work with the ItemDetails.View prototype and add/redefine properties and methods: 您可以使用ItemDetails.View原型并添加/重新定义属性和方法:

_.extend(ItemDetailsView.prototype, {
    title: 'My new item details view'
})

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM