【发布时间】:2016-06-02 20:20:40
【问题描述】:
我正在使用 jQuery 插件在 Aurelia 中制作一个简单的树形菜单元素。我可以在元素中使用插件,但它会引发 TS 编译错误。
客户端:47 ./src/tree.ts
(18,32): 错误 TS2339: 类型 'ElementFinder' 上不存在属性 'jstree'
为什么会抛出这个错误,我该如何消除它?
附加信息:
元素渲染正常。我从 webpack - typescript starter kit 开始工作。相关代码如下。我使用 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.d.ts 文件?
-
不,我将不得不阅读该内容
标签: typescript aurelia