Typescript 属性 在类型 'ElementFinder' 上不存在
Typescript property does not exist on type 'ElementFinder'
我正在使用 jQuery 插件在 Aurelia 中制作一个简单的树形菜单元素。我可以在元素中使用插件,但会抛出 TS 编译错误。
client:47 ./src/tree.ts
(18,32): error TS2339: Property 'jstree' does not exist on type 'ElementFinder'
为什么会抛出这个错误,我该如何消除它?
附加信息:
元素呈现正常。我从 webpack - typescript 入门工具包开始工作。相关代码如下。我使用 npm install jstree
来包含 jstree 库。
tree.ts:
import { inject, customElement } from 'aurelia-framework'
import { DOM } from 'aurelia-pal'
import 'jstree/dist/themes/default/style.min.css'
import 'jstree'
@customElement('tree')
@inject( DOM.Element )
export class Tree {
element : HTMLElement = null;
constructor ( element : HTMLElement ){
this.element = element;
}
attached() {
$( '#' + this.element.id ).jstree({
'core' : {
'data' : [
{
"text" : "Root node",
"state" : {"opened" : true },
"children" : [
{
"text" : "Child node 1",
"state" : { "selected" : true },
"icon" : "fa fa-file-o"
},
{ "text" : "Child node 2", "state" : { "disabled" : true } }
]
}]
}});
}
}
tree.html:
<template></template>
其他模块(welcome.ts / welcome.html)
<require from="./tree"></require>
<tree id="menuTree"></tree>
安装 jstree 的定义文件:https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/jstree/jstree.d.ts
最简单的方法是使用 typings
:https://www.npmjs.com/package/typings
npm install typings --global
typings install jstree
我正在使用 jQuery 插件在 Aurelia 中制作一个简单的树形菜单元素。我可以在元素中使用插件,但会抛出 TS 编译错误。
client:47 ./src/tree.ts
(18,32): error TS2339: Property 'jstree' does not exist on type 'ElementFinder'
为什么会抛出这个错误,我该如何消除它?
附加信息:
元素呈现正常。我从 webpack - typescript 入门工具包开始工作。相关代码如下。我使用 npm install jstree
来包含 jstree 库。
tree.ts:
import { inject, customElement } from 'aurelia-framework'
import { DOM } from 'aurelia-pal'
import 'jstree/dist/themes/default/style.min.css'
import 'jstree'
@customElement('tree')
@inject( DOM.Element )
export class Tree {
element : HTMLElement = null;
constructor ( element : HTMLElement ){
this.element = element;
}
attached() {
$( '#' + this.element.id ).jstree({
'core' : {
'data' : [
{
"text" : "Root node",
"state" : {"opened" : true },
"children" : [
{
"text" : "Child node 1",
"state" : { "selected" : true },
"icon" : "fa fa-file-o"
},
{ "text" : "Child node 2", "state" : { "disabled" : true } }
]
}]
}});
}
}
tree.html:
<template></template>
其他模块(welcome.ts / welcome.html)
<require from="./tree"></require>
<tree id="menuTree"></tree>
安装 jstree 的定义文件:https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/jstree/jstree.d.ts
最简单的方法是使用 typings
:https://www.npmjs.com/package/typings
npm install typings --global
typings install jstree