如何在 Windows Azure Pack Management Portal 擴充功能中將專案新增至新增選單
適用于:Windows Azure Pack
[新增新選單] 是管理入口網站使用者介面中用來建立新專案的中央位置。 延伸模組可能會為此隱藏式選單提供功能表項目,讓使用者能夠透過延伸模組建立新的資源。功能表中的專案會以宣告方式新增,而且一旦新增之後就無法變更或移除。 它們可從管理入口網站中的任何位置取得。 宣告的建議位置是在延伸模組的初始化 JavaScript 中。 如需詳細資訊,請參閱Windows Azure Pack Management Portal Client-Side Extension JavaScript。
加入標準功能表項目
使用下列程式碼新增標準功能表項目:
menuItems: [ { // ID of the menu item name: "WebDomain", // Text of the menu item displayName: "Web site domains", // ID of a template to show when the user hovers over the item (before they click it) preview: "createPreview", // Sub-menu (child menu) items take mostly the same parameters as parent menu items subMenu: [ { name: "Create", displayName: "Create", // Function to run when the user clicks the item execute: global.DomainTenantExtension.CreateWizard.showCreateWizard, preview: "customCreatePreview" } ] } ]
快速建立功能表項目
針對 [快速建立] 功能表項目, (在 [新增選單] 中顯示簡短表單的專案,以立即建立專案) 您必須提供將在隱藏式選單中轉譯之範本的識別碼,以及定義在顯示範本時的行為 (執行動作的函式,當使用者按一下 [確定] 時, etc.) 。
新增快速建立功能表項目
使用上述程式碼,將下列程式碼新增至 menuItems 陣列,以新增快速建立功能表項目。
{ // ID of this menu item name: "QuickCreate", // Text displaye on top of the Quick Create template as a title displayName: "Quick Create a Domain", // Description text displayed when the user hovers over the item with their mouse description: "Quickly add a new domain by supplying a few details", // Template to render for the Quick Create form template: "quickcreate", // Menu item's text label:"Quick Create", // Context object for the template data: null, opening: function(object) { // Add logic here to run just before the template is rendered } open: function () { // Add logic here to run just after the template is rendered Shell.UI.Validation.setValidationContainer("#webDomainQuickCreateForm"); }, ok: function(object) { var dialogFields = object.fields; if (Shell.UI.Validation.validateContainer("#webDomainQuickCreateForm")) { createWebDomain(dialogFields); } return false; }, cancel: function (object) { // Add logic here to run after the user dismisses the Quick Create form // Do nothing in this case } }