-3

我有一个第三方扩展提供给我的 javascript 文件,用于我的 magento 商店中的搜索功能。

第三方告诉我用值“firstWords”定义参数“removeWordsIfNoResults”。

我在 js 文件中找到了这一行:

this.removeWordsIfNoResults = params.removeWordsIfNoResults;

但是,我不确定如何将其设置为“firstWords”。

有任何想法吗?

4

1 回答 1

1

看一下文档,和我猜的差不多,只是不是构造函数。

检查文档中的这个示例片段:

// simple query
index.search('jim', searchCallback);

// with parameters
index.search(
  'jim', {
    hitsPerPage: 5, facets: '*'
  },
  searchCallback
);

function searchCallback(err, content) {
  if (err) {
    return err;
  }

  content.hits.forEach(function(hit) {
    console.log(hit);
  });
}

请注意,第二个.search将填充了值的object( ) 作为其第二个参数,并且回调移动到第三个参数位置。{}

这是您定义参数的对象。

index.search(
  'jim', {
    removeWordsIfNoResults: 'firstWords'
  },
  searchCallback
);

原答案:

听起来您正在使用某种构造函数,它希望将设置object传递给它。

查看 MDN 的Working with objects,了解如何在 JavaScript 中创建、传递、访问和操作对象。

这是将配置样式对象传递给函数的示例 - 在本例中为构造函数。

function MyObject (config) {
  this.someKeyValue = config.someKeyValue;
}


var myObject = new MyObject({ someKeyValue: 'Some String' });

console.log(myObject.someKeyValue);

于 2016-01-29T16:05:35.067 回答