跳轉到

面板工具

Import 相依

import { UofxPluginPanel } from '@uofx/plugin';   

使用方式

頁面類別繼承底層類型UofxPluginPanel即有對應的變數可用。

import { UofxPluginPanel } from '@uofx/plugin'
@Component({
  ...
})
export class PanelComponent extends UofxPluginPanel {
  ...
}

取得 Entry Host

取得 Entry Host 設定為 API Service 的 Server Url。

import { UofxPluginPanel } from '@uofx/plugin'
@Component({
  selector: 'uofx-web-setting',
  template: `...`
})
export class PanelComponent extends UofxPluginPanel implements OnInit {
  constructor(private apiService: APIService) { super(); }

  ngOnInit() {
    console.log(this.pluginSetting.entryHost);
    this.apiService.serverUrl = this.entryHost;
  }
}

Plugin Setting 可用屬性

名稱 說明
entryHost 取得目前外掛模組的根路徑與版本號組合
pluginCode 取得目前外掛模組的唯一識別碼

取得路徑

透過取得的路徑可在routerLink上組合使用,使用此方法方便直接指定對應的路徑,不必擔心相對路徑問題。

import { UofxPluginPanel } from '@uofx/plugin'
@Component({
  selector: 'uofx-web-panel',
  template: `
    <a [routerLink]="adminUrl"></a>
  `
})
export class PanelComponent extends UofxPluginPanel implements OnInit {
  adminUrl: string;

  ngOnInit() {
    console.log(this.baseUrl.adminPlugin);
    // 輸出: /admin/plugin/edesampleplugin
    this.adminUrl = this.baseUrl.adminPlugin;
  }
}

Base Url 可用屬性

名稱 說明 目標位置
admin 管理者大廳 /admin
adminPlugin 管理者目標外掛模組根路徑 /admin/plugin/{codePath}
user 使用者大廳 /user
userPlugin 使用者目標外掛模組根路徑 /user/plugin/{codePath}
appPlugin App目標外掛模組根路徑 /home/plugin/{codePath}