如何 link extjs 组件到 html link

How to link extjs component to html link

使用 sencha cmd 应用程序是自动生成的,其逻辑是将给定视图设置为主视图。还有自动生成的 index.html 作为加载组件的起始页,一切都在 MVC 架构中自动完成。但是有没有办法让一些自定义 HTML 页面作为起始页面,然后从 html links 调用 extjs 组件?例如,如果有一个 html 页面,例如:

index.html

<!DOCTYPE html>
<html>
<body>

<div class="topnav">
  <a href="#login">Login</a>
  <a href="#contact">Contact</a>
  <a href="#about">About</a>
</div>

<div style="padding-left:16px">
  <h2>The start up application page</h2>
  <p>Some content..</p>
</div>

</body>
</html>

如何使用此 html 作为起始页,然后通过单击登录打开我的 extjs 登录 class?我为什么要这样做?很简单,因为有更多的免费 Web 模板可以用作主要应用程序核心。或者这不是现代 extjs Web 应用程序的工作方式?!

我认为可能的解决方案之一是创建一个将定义为主视图的主面板(在 extjs 中),然后将外部 html 代码加载到其中。但是话又说回来,问题仍然存在:如何通过单击 <a href="#login">Login</a> link?

打开登录面板

事实上,我已经试过了。因此,在我的工作应用程序中,我将 index1.html 代码加载到面板中并添加:

<a href="#login" onclick="myFunction()">Login</a>然后

<script>
function myFunction() {
  Ext.widget('login').center();
}
</script>   

一切看起来很有希望,但是,在单击登录 href 时,我收到一个错误,指出 Ext 未定义:

当我对此进行试验时,我不得不调用微加载器。

<script id="microloader" data-app="61f95994-076b-4a7a-yyyy-xxxxxxx" type="text/javascript" src="/workspace/apps/webUtils/bootstrap.js"></script>

bootstrap.js 的路径对于开发或生产会有所不同。

还有:

Sencha 有 Ext Web 组件https://www.sencha.com/products/extwebcomponents/

还有 Angular 和 React 的工具包。 https://www.sencha.com/products/