0

そして、まだ私とこのタイポスクリプトがあります...

XML をフィルタリングする必要がある場合は、Project の定数に companyId が定義されている可能性があります。

[$plugin.xml_path.companyId = '']
  plugin.xml_xpath.conf.xpath.path   = /jobs/job/company
[else]
  plugin.xml_xpath.conf.xpath.path   = /jobs/job/company[@id={$plugin.xml_path.companyId}]
[global]

このコードは、ID が定義されている限り機能します。ID が定義されていない場合は、マークのみで 1 つの出力が得られます。

会社には約 10 の子会社があり、関連するジョブのみを表示する必要があります。ただし、Mothercompany のページ (ID 定数が指定されていない場所) には、すべてのジョブがリストされている必要があります。各ジョブは 1 つの子会社に関連付けられています。

私は読んだことがありますstdWrap.ifEmptyが、これが私の状況でどのように役立つかわかりませんか?

誰かが私を正しい方向に向けることができますか?

4

2 に答える 2

0

以下のタイポスクリプトを試してください。

plugin.xml_xpath.conf.xpath.path   = /jobs/job/company[@id={$plugin.xml_path.companyId}]
[globalVar = LIT: {$plugin.xml_xpath.conf.xpath.path} = ]
plugin.xml_xpath.conf.xpath.path   = /jobs/job/company
[end]

「plugin.xml_xpath.conf.xpath.path」が null の場合、パスは「/jobs/job/company」に置き換えられます。

于 2013-01-15T11:46:53.323 に答える
0

それは必要ありませんif。小さな XPath 式ですべてを実行できます。

/jobs/job/company[@id={$plugin.xml_path.companyId} or @id="" or not(@id)]

説明:

  1. @id={$plugin.xml_path.companyId}IDが一致する会社を探す
  2. @id=""ID が空の会社を検索します
  3. not(@id)IDのない企業を探す

2と3はよくわからなかったので、両方入れました。必要に応じて削除します。


より具体的な質問への更新:

これも簡単です。

/jobs/job/company[{$plugin.xml_path.companyId}="" or @id={$plugin.xml_path.companyId}]
于 2013-01-15T10:30:12.230 に答える