1. スピーク3

Sitecoreコンテキストの使用

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

SPEAK 3のSciContextServiceサービスを使用して、Sitecoreコンテキストを使用するようにAngularアプリケーションを設定できます。コンテキストは、ユーザー、カルチャ、言語設定、およびデータベース設定に関する情報を含むオブジェクトです。コンテキストを使用して、たとえば、ユーザー名を表示したり、言語を設定したりします。

次に、Contextオブジェクトの例を示します。

{
  ContentDatabase: {
    Name: string  // 'master'
  }
  Culture: {
    Name: string, // 'da-DK'
    ThreeLetterISOLanguageName: string, // 'dan'
    TwoLetterISOLanguageName: string  // 'da'
  }
  Database: {
    Name: string  // 'core'
  }
  Language: {
    Name: string  // 'da'
  }
  User: {
    LocalName: string, // 'admin'
    Name: string, // 'sitecore\admin'
    Profile: {
      FullName: string, // 'Administrator' (Another example could be 'John Doe')
      Portrait: string  // 'office/16x16/default_user.png'
    }
  }
}

設定と使用方法

次のセットアップにより、ContextオブジェクトをSPEAK 3コンポーネントで使用できるようになります。

AccountInformationコントロールなどのコンポーネントは、ng-bcl用に構成されている場合、Contextオブジェクトを使用します。ng-bclモジュールにContextオブジェクトを与えると、手動の設定と配線が大幅に節約されます。

app.module.ts年:

import { SciContextModule, SciContextService, sciContextFactory } from '@speak/ng-sc/context';
import { CONTEXT } from '@speak/ng-bcl/core/context';
...
imports: [ 
  SciContextModule 
],
providers: [
  { provide: CONTEXT, useFactory: sciContextFactory, deps:[SciContextService] },
]
...

コンポーネントにContextオブジェクトを挿入する必要があります(例:context-example.component.ts

import { Context } from '@speak/ng-sc/context';
import { CONTEXT } from '@speak/ng-bcl';
@Component({
  selector: 'app-context-example',
  template: `
    <!-- Render the Language name -->
    <p>Language.Name: {{ ctx.Language.Name }}</p>
  `
})
export class ContextExampleComponent implements OnInit {
  ctx: Context = {} as Context;
  constructor(
    @Inject(CONTEXT) public context$: Observable<Context>
  ) {}
  ngOnInit() {
    this.context$.subscribe(context => this.ctx = context);
  }
}

Angularのドキュメントには、 依存関係挿入トークンに関する詳細情報があります。

この記事を改善するための提案がある場合は、 お知らせください!