4

我试图将拖放添加到我的 ionic 2 应用程序中。但不能让它工作。

这是我到目前为止所做的:

npm install ng2-dragula dragula --save

然后在我的页面中:

@Component({
  templateUrl: 'build/pages/dragtest/dragtest.html',
  directives: [Dragula],
  viewProviders: [DragulaService],
})
export class DragtestPage {
  constructor(private nav: NavController) {
  }
}

但是当我添加 [dragula] 标签时,出现错误:无法绑定“dragula”,因为它不是已知的原生属性。

有没有人让它与 ionic 2 一起使用,有没有例子?

4

3 回答 3

0

我认为您错过了导入声明:

从'ng2-dragula/ng2-dragula'导入{DragulaService,Dragula};

我已经尝试过了,但似乎 IDE 找不到目录“ng2-dragula”(PHP Storm 中的红色文本)

于 2016-08-04T17:08:22.190 回答
0

我只是写了一个关于如何使最新版本的 ng-dragula 为 ionic 2 工作的教程,在 ng-dragula github 页面上,他们在那里有代码示例,但是如果你只是复制和粘贴不起作用,我们需要做一些改变以使其工作。

几周前写了一篇关于它的文章,希望这会有所帮助

http://etenbo.com/add-drag-and-drop-on-ionic-2-by-plugin-dragula/

于 2017-04-24T03:52:11.863 回答
0

我做到了;) 安装后在 app.module.ts 中导入模块和服务:

import { DragulaModule, DragulaService } from 'ng2-dragula/ng2-dragula';

然后将模块添加到导入中:

imports: [
IonicModule.forRoot(MyApp),
DragulaModule
],

以及对供应商的服务:

providers: [{provide: ErrorHandler, useClass: IonicErrorHandler}, DragulaService]

之后,您只需在您将使用它的组件中导入该服务:

import { DragulaService } from 'ng2-dragula/ng2-dragula';

并将其传递给构造函数:

constructor(private dragulaService: DragulaService ) {}

最后按照此处显示的步骤进行操作。(仅适用于模板,不适用于导入)

于 2017-02-01T22:58:29.000 回答