2014-10-01 40 views
4

我是ExtJs的新手,希望将使用Sencha CMD创建的extjs 5应用程序集成到WebAPI应用程序中! 我做了BUILD模式的集成,但没有进行开发模式。在Visual Studio中集成exchaj 5应用程序构建与sencha cmd和WebAPI

关于这篇文章(http://peterkellner.net/2013/07/24/using-extjs-4-javascript-and-visual-studio-to-generate-a-compiled-spa-app-with-sencha-cmd/) 整合的步骤如下所示完成!

步骤1.创建路径:C:\ VCProject \ SVCodeCampWeb \的WebAPI

第2步:创建

名为 'API_NAME' 在步骤1中的目录中的WebAPI项目第3步:移动的ExtJS 5框架(EXT-5.0.0),以步骤1的目录

步骤4.生成具有煎茶CMD ExtJS的应用程序: C:\ VCProject \ SVCodeCampWeb \的WebAPI \ EXT-5.0.0>煎茶生成应用程序MyApp C:\ VCProject \ SVCodeCampWeb \ WebAPI \ API_NAME \ API_NAME \ CMDBUG1

第5步。通过解决方案资源管理器将ext应用程序包含到Web Api中。

步骤6.构建与煎茶CMD该应用,如下所示: C:\用户\艾伯特\文件\的Visual Studio 2013 \项目\ BMSIA \ BMSIA.Web \ BMSJS>煎茶应用程式建立

WORKS! ! 这些是我包含在用于BUILD模式的WebAPI的_Layout.chtml中并且可行的文件!

错误区间!

,发展模式,我包括以下文件:

<链接HREF = “〜/ CMDBUG1 /编译/生产/ MyApp的/资源/ MyApp的-all.css” 相对= “样式”/>

<脚本SRC = “〜/ CMDBUG1/EXT/EXT-all.js”>

<脚本SRC = “〜/ CMDBUG1/app.js”>

但它抛出这个错误: TypeError:Ext.application不是一件有趣的事情ction

如果您需要更多的细节,请告诉我!

任何帮助将不胜感激!

回答

2

没有必要将.js和.css设置为_Layout.cshtml。当您使用Sencha CMD构建应用程序时,您将获得index.html,app.js,resources/App-all.css和一些图像。这里的目标是这个应用程序可以在应用程序域的任何地方工作(或者如果应用了CORS,则可以在其他域上)。 Web Api将提供您的应用将调用的URI。这样你就可以将客户端应用程序(extjs)从服务器(webapi)中分离出来,即使它们在同一个项目中也是如此。如果你为你的应用程序提供了不同的webapi,那么整个事情就会起作用。有一点要记住的是baseUri。在你开发的时候,它会是http://localhost:xxxx,当应用程序部署时它将会是http://www.somedomain.com。我使用简单的单例类来设置我的开发和生产路径。这是必要的,因此您的来自models/stores/ext.ajax的ajax调用具有到您api的有效路径。总体目标是分离客户端和webapi。你可以把你的builded应用程序放到/ app文件夹中,并将你的extjs代码保存在/ source文件夹中,然后你可以从发布中排除它们。

Ext.define('MyApp.config.AppConfig', { 
    statics: { 
     path: 'http://localhost:8888' 
     //path: 'http://client1.azurewebsites.net', 
     //path: 'http://client2.azurewebsites.net' 
    } 
}); 

然后当你调用API你说:url:MyApp.config.AppConfig.path + /users/list。这当然可以很好地完成。

+0

感谢您的回答Davor! – Albert 2014-12-23 12:34:57

相关问题