javascript: 提供的参数与调用目标的任何签名都不匹配
javascript: Supplied parameters do not match any signature of call target
我正在尝试使用 typeahead.js 在 Angular2 应用程序中实现提前输入。在打字稿文件中,我添加了以下导入段。
import initTypeahead = require("../../../assets/js/init/dashboard.js");
dashboard.d.ts
declare function initTypeahead(data:any,id:any): void;
export = initTypeahead(data,id);
dashboard.js
if ('undefined' !== typeof module) {
module.exports = function initTypeahead(data, element) {
console.log(data);
console.log(element);
var _values = new Bloodhound({
datumTokenizer: Bloodhound.tokenizers.obj.whitespace('value'),
queryTokenizer: Bloodhound.tokenizers.whitespace,
local: data
});
_values.initialize();
var elt = $(element);
elt.tagsinput({
itemValue: 'code',
itemText: 'value',
typeaheadjs: {
name: '_values',
displayKey: 'value',
source: _values.ttAdapter()
}
});
}
}
然后在打字稿中添加以下行。
private getCities(): void {
this.componentsService.getCriteriaValues(this.product, "city").subscribe(res => {
initTypeahead(res.returnData, '#city'); // error at this line
});
}
ng serve
上出现以下错误
Supplied parameters do not match any signature of call target.
非常感谢任何建议。
谢谢
如果您使用 Angular-CLI:
angular-cli.json:
"scripts": [
"assets/js/init/dashboard.js"
],
你在哪里使用它:
import '../../../assets/js/init/dashboard.js';
declare function initTypeahead(data:any,id:any): void;
您首先需要从您的 angular-cli.json 加载 库,然后您可以实际将该代码导入您的组件以便使用它是方法、变量等
我正在尝试使用 typeahead.js 在 Angular2 应用程序中实现提前输入。在打字稿文件中,我添加了以下导入段。
import initTypeahead = require("../../../assets/js/init/dashboard.js");
dashboard.d.ts
declare function initTypeahead(data:any,id:any): void;
export = initTypeahead(data,id);
dashboard.js
if ('undefined' !== typeof module) {
module.exports = function initTypeahead(data, element) {
console.log(data);
console.log(element);
var _values = new Bloodhound({
datumTokenizer: Bloodhound.tokenizers.obj.whitespace('value'),
queryTokenizer: Bloodhound.tokenizers.whitespace,
local: data
});
_values.initialize();
var elt = $(element);
elt.tagsinput({
itemValue: 'code',
itemText: 'value',
typeaheadjs: {
name: '_values',
displayKey: 'value',
source: _values.ttAdapter()
}
});
}
}
然后在打字稿中添加以下行。
private getCities(): void {
this.componentsService.getCriteriaValues(this.product, "city").subscribe(res => {
initTypeahead(res.returnData, '#city'); // error at this line
});
}
ng serve
上出现以下错误Supplied parameters do not match any signature of call target.
非常感谢任何建议。
谢谢
如果您使用 Angular-CLI:
angular-cli.json:
"scripts": [
"assets/js/init/dashboard.js"
],
你在哪里使用它:
import '../../../assets/js/init/dashboard.js';
declare function initTypeahead(data:any,id:any): void;
您首先需要从您的 angular-cli.json 加载 库,然后您可以实际将该代码导入您的组件以便使用它是方法、变量等