我有一个第三方扩展提供给我的 javascript 文件,用于我的 magento 商店中的搜索功能。
第三方告诉我用值“firstWords”定义参数“removeWordsIfNoResults”。
我在 js 文件中找到了这一行:
this.removeWordsIfNoResults = params.removeWordsIfNoResults;
但是,我不确定如何将其设置为“firstWords”。
有任何想法吗?
我有一个第三方扩展提供给我的 javascript 文件,用于我的 magento 商店中的搜索功能。
第三方告诉我用值“firstWords”定义参数“removeWordsIfNoResults”。
我在 js 文件中找到了这一行:
this.removeWordsIfNoResults = params.removeWordsIfNoResults;
但是,我不确定如何将其设置为“firstWords”。
有任何想法吗?
看一下文档,和我猜的差不多,只是不是构造函数。
检查文档中的这个示例片段:
// 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);