PageSourceSearch

https://w-f.co.jp/assets/js/system/pages/_common_section/reccomend…/top_ranking_products.js?3579740850

js w-f.co.jp collected 2026-10-07 13:05:46 UTC 1,728 bytes, 68 lines download raw bytes

1// (c) 2023 W2 Co.,Ltd.
2
3/**
4 * 商品ランキング
5 */
6class SectionCommonDirTopRankingProducts {
7  constructor() {
8  }
9  /**
10   * セクション実行
11   * @param {any} liquidParam liquidからのパラメーター
12   */
13  run(liquidParam) {
14    this.addComponent(liquidParam);
15  }
16  /**
17   * コンポーネント追加
18   */
19  addComponent(liquidParam) {
20    const component = {
21      // text/x-template要素のid
22      template: '#top-ranking-products',
23      data() {
24        return lib.vue.product.ProductRankingModel.create(this.productRankingId);
25      },
26      methods: {
27        /**
28         * 描画
29         * @param {...any} args 引数
30         */
31        draw(...args) {
32          lib.vue.product.ProductRankingService.get(liquidParam, this, args)
33            .then((result) => {
34              // 描画後の任意の処理を記述
35            });
36        },
37        /**
38         * 有効なキャンペーンアイコンリストを取得
39         * @param {...any} args 引数
40         * @returns {Array} 有効なキャンペーンアイコンリスト
41         */
42        getEnabledCampaignIconList(...args) {
43          const productItem = args[0];
44          return productItem.campaignIconList.filter(c => c.isEnabled);
45        },
46      },
47      // コンポーネントの引数
48      props: {
49        productRankingId: {
50          type: String,
51        },
52        displayCount: {
53          type: Number,
54        }
55      },
56      watch: {
57      },
58      computed: {
59      },
60      created() {
61      },
62      mounted() {
63        this.draw();
64      },
65    };
66    g_vueManager.setComponent('top-ranking-products', component);
67  }
68}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.