首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带Angular2的PrimeNG -webpack-首发

带Angular2的PrimeNG -webpack-首发
EN

Stack Overflow用户
提问于 2016-04-12 17:42:03
回答 2查看 3.6K关注 0票数 0

我正在尝试在我的Angular2项目中基于angular2-webpack-starter (https://github.com/AngularClass/angular2-webpack-starter)来配置PrimeNG。

我使用npm install安装了PrimeNG和PrimeUI,然后添加了必要的类型作为环境依赖:

代码语言:javascript
复制
"jquery": "github:DefinitelyTyped/DefinitelyTyped/jquery/jquery.d.ts#470954c4f427e0805a2d633636a7c6aa7170def8",
"jqueryui": "github:DefinitelyTyped/DefinitelyTyped/jqueryui/jqueryui.d.ts#a3a5cd5554dc2c0ff8955d1db0673879af3095bc",
"primeui": "github:primefaces/primeui/primeui.d.ts#7640bc59a3634e501634655217fdd413bed6d003",

首先,我遇到了jquery类型的问题。它给了我以下错误:

代码语言:javascript
复制
Subsequent variable declarations must have the same type.  Variable '$' must be of type 'cssSelectorHelper', but here has type 'JQueryStatic'.

我通过在typings/browser/ambient/jquery/index.d.ts中注释掉以下几行代码解决了这个问题

代码语言:javascript
复制
declare module "jquery" {
    export = $;
}
declare var $: JQueryStatic;

现在,我正在尝试使用import "primeui/primeui-ng-all.min.js";命令在vendor.ts文件中导入primeui-ng-all.min.js。然而,我得到了以下错误:

代码语言:javascript
复制
Module not found: Error: Cannot resolve module 'jquery-ui' in .../angular2-webpack-starter/node_modules/primeui @ ./~/primeui/primeui-ng-all.min.js 8:23135-23167

在angular2-webpack-starter中包含PrimeNG是正确的方式吗?我该如何解决这个问题?也许我应该如何导入PrimeNG需要的其他文件,比如样式表?

EN

回答 2

Stack Overflow用户

发布于 2016-04-12 19:03:23

这是一种shortfast入门方法(非npm),首先您需要从此处下载组件文件夹,然后将其添加到您的index.html add head

代码语言:javascript
复制
 <link rel="stylesheet" type="text/css" href="prime/resources/primeui/themes/delta/theme.css"/>
        <link rel="stylesheet" type="text/css" href="prime/resources/icons/css/font-awesome.css"/>
        <link rel="stylesheet" type="text/css" href="prime/resources/css/prism.css"/>
        <link rel="stylesheet" type="text/css" href="prime/resources/css/fullcalendar.css"/>
        <link rel="stylesheet" type="text/css" href="prime/resources/css/quill.snow.css"/>
        <link rel="stylesheet" type="text/css" href="prime/resources/primeui/primeui-ng-all.css"/>
        <link rel="stylesheet" type="text/css" href="prime/resources/css/site.css"/>
<script src="prime/resources/primeui/primeui-ng-all.min.js"></script>
<script src="prime/resources/js/prism.js"></script>
<script src="prime/resources/js/charts.min.js"></script>
<script src="prime/resources/js/moment.js"></script>
<script src="prime/resources/js/fullcalendar.js"></script>
<script src="prime/resources/js/site.js"></script>
<script>
        System.config({
            transpiler: 'typescript',
            typescriptOptions: { emitDecoratorMetadata: true },
            packages: {'app': {defaultExtension: 'ts'},
                'components': {defaultExtension: 'ts'}, //Your downloaded components folder here.
                'prime/resources/js' : {defaultExtension: 'js'}
        });
        System.import('app/boot')
                .then(null, console.error.bind(console));
    </script>

在配置应用程序之前检查路径。

票数 1
EN

Stack Overflow用户

发布于 2016-04-26 19:47:00

通过NPM手动安装JQuery UI并将其导入vendor.ts (在Prime之前)为我修复了它。

代码语言:javascript
复制
import 'jquery-ui/jquery-ui.js';
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36569434

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档