加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

如何为Angular2安装组件包装器(特别是Dragula)

发布时间:2020-12-17 07:14:28 所属栏目:安全 来源:网络整理
导读:我对npm和Angular2都很新.我已经按照Angular2的教程创建了一个初始应用程序,我已经拥有了相当可观的东西. https://angular.io/docs/ts/latest/tutorial/ 我需要在我的应用程序中添加拖放功能,并且相信我应该使用Angular而不是jquery-ui本地的东西.我找到了这
我对npm和Angular2都很新.我已经按照Angular2的教程创建了一个初始应用程序,我已经拥有了相当可观的东西.
https://angular.io/docs/ts/latest/tutorial/

我需要在我的应用程序中添加拖放功能,并且相信我应该使用Angular而不是jquery-ui本地的东西.我找到了这个插件:

https://github.com/valor-software/ng2-dragula

我按照README中的说明进行操作,看起来它已经安装完毕.它存在于node_modules和ng2-dragula“:”^ 1.0.3已添加到我的依赖项中.然后我运行npm install并启动.

但是,当我尝试使用自述文件中指定的指令和提供程序时,它返回not found(在我的IDE和控制台中).

@Component({
  selector: 'sprint-tasks',inputs: ['sprintTask'],templateUrl: './views/sprint-tasks.html',directives: [Dragula],providers: [SprintTaskService],viewProviders: [DragulaService]
})

现在,我猜我要么(1)导入文件顶部的组件和/或(2)在我的索引的加载库部分列出库.但文档没有提到这一点,我一直无法弄清楚正确的端点.这几乎就像文档认为这些指令现在应该在npm安装后对系统“天生”,但我不知道这是不是一件事:)

我猜/希望这对于习惯于处理第三方组件的人来说相当明显.感谢您的任何帮助,您可以提供.

解决方法

这个问题的常见罪魁祸首是tsconfig.json文件上的标志.为了正确引用这些文件,您应该使用

"moduleResolution": "node"

你还需要使用像Systemjs这样的模块加载器库或类似的东西来导入它们.

Dragula库应该附带一个bundle,然后您可以将其导入到模块加载器中.使用系统,这应该像在index.html文件中简单地包含bundle一样简单.

<script src="node_modules/dragula/path/to/bundle.js"></script>

或者无论文件被调用.

如果库不包含捆绑包,或者捆绑包不适合您,那么您可以在系统配置中对此进行注释,系统将为您执行此操作.

System.config({
  map:{
    'dragula': 'node_modules/dragula'
  }
});

一如既往,这可能需要对您的确切需求进行一些调整,但应该让您亲近.需要更多信息来进一步微调您特定场景的答案.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读