2017-08-04 90 views
0

我是Angular 2的新手,已經有勇敢的軟件基本演示表工作,但有幾點我想幫忙。Angular 2錯誤沒有導出成員

1)當我爲該項目運行ngserve時,得到: 許多相同的錯誤,如下所示:「沒有導出成員'Renderer2'。」 [默認] C:\ wamp \ www \ nationalgrid \ public_cli \ node_modules @ ng-bootstrap \ ng-bootstrap \ buttons \ radio.d.ts:1:10 Module'「C:/ wamp/www/nationalgrid/public_cli/node_modules // index「'沒有導出成員'Renderer2'。

我不想使用渲染2,因爲這是角4,這個客戶端系統必須暫時處於角度2。我輸入了什麼或做了什麼來得到這個錯誤?

的package.json

{ 
"name": "a2-cli-app", 
"version": "0.0.0", 
"license": "MIT", 
"angular-cli": {}, 
"scripts": { 
"start": "ng serve", 
"lint": "tslint "src/**/*.ts"", 
"test": "ng test", 
"pree2e": "webdriver-manager update", 
"e2e": "protractor" 
}, 
"private": true, 
"dependencies": { 
"": "^2.2.1", 
"": "^2.2.1", 
"": "^2.2.1", 
"": "^2.2.1", 
"": "^2.2.1", 
"": "^2.2.1", 
"": "^2.2.1", 
"": "^3.2.1", 
"angular2-cookie": "^1.2.5", 
"bootstrap": "^3.3.7", 
"chart.js": "^2.4.0", 
"core-js": "^2.4.1", 
"ng2-bs3-modal": "^0.10.4", 
"ng2-charts": "1.4.1", 
"ng2-file-upload": "1.1.4-2", 
"ng2-pagination": "1.0.1", 
"ng2-toastr": "1.3.2", 
"rxjs": "5.0.0-beta.12", 
"ts-helpers": "^1.1.1", 
"zone.js": "^0.6.23" 
}, 
"devDependencies": { 
"": "^2.2.1", 
"": "2.5.38", 
"": "^6.0.42", 
"angular-cli": "1.0.0-beta.21", 
"codelyzer": "~1.0.0-beta.3", 
"jasmine-core": "2.5.2", 
"jasmine-spec-reporter": "2.5.0", 
"karma": "1.2.0", 
"karma-chrome-launcher": "^2.0.0", 
"karma-cli": "^1.0.1", 
"karma-jasmine": "^1.0.2", 
"karma-remap-istanbul": "^0.2.1", 
"protractor": "4.0.9", 
"ts-node": "1.2.1", 
"tslint": "3.13.0", 
"typescript": "~2.0.3", 
"webdriver-manager": "10.2.5", 
"webpack": "^3.4.1" 
} 
} 

如果您需要更多的細節,以幫助這個只是讓我知道你需要什麼。

2)關於你的勇敢簡單數據表的過濾如何將過濾設置爲大小寫無感,有人提出了一個正則表達式,但我看不出如何應用於過濾器?

3)我可以在數據表中看到他們從table-data.ts中獲取數據的示例數組我有我的數據從一個MySQL數據庫基地作爲數組進入該項目,但是如何分配它到數據變量。

由於他們有私人數據:Array = TableData ;,但如果我嘗試將「TableData」更改爲其他任何代碼,只是給我錯誤,並且不會加載,即使我更新了列數組定義以匹配我的傳入數據。

4)最後爲了讓我的文件更清晰一些,是否可以將列數組移動到一個新文件中並引用它,因爲我的列數組比它們大得多?

他們列陣列提前

columns:Array = [ 
{title: 'Name', name: 'name'}, 
{title: 'Position', name: 'position', sort: ''}, 
{title: 'Office', className: ['office-header', 'text-success'], name: 'office', sort: 'asc'}, 
{title: 'Extn.', name: 'ext', sort: ''}, 
{title: 'Start date', className: 'text-warning', name: 'startDate'}, 
{title: 'Salary ($)', name: 'salary'}, 
]; 

感謝

回答

0

讓分裂的答案。

1)這些錯誤與ng-bootstrap有關,它與ngx-bootstrap(由valor-software開發的)不同。在ng-bootstrap中,beta 25版本聲明它需要角度4.0.3。所以使用和舊版本將解決您的問題。

2)關於過濾不能將字符串轉換爲小寫,如https://github.com/valor-software/ng2-table/issues/152中所述?

3)您收到了什麼樣的錯誤?您是否使用http調用獲取數據?你是否將數據分配給param的結果而不是可觀察的?

4)當然,你可以創建一個文件:「columns.ts」

export let columns: Array<any> = [ 
{title: 'Name', name: 'name'}, 
{title: 'Position', name: 'position', sort: ''}, 
{title: 'Office', className: ['office-header', 'text-success'], name: 'office', sort: 'asc'}, 
{title: 'Extn.', name: 'ext', sort: ''}, 
{title: 'Start date', className: 'text-warning', name: 'startDate'}, 
{title: 'Salary ($)', name: 'salary'}, 
]; 

然後,你需要使用它,你可以將其導入。

import { colums } from 'columns.ts'; 
0

解決點4:

我創建了一個名爲MyColumns.ts文件,如下所示:

export const MyColumns:Array<any> = 
[ 
{title: 'Name', name: 'name'}, 
{title: 'Position', name: 'position', sort: ''}, 
... 
{title: 'Salary ($)', name: 'salary'}, 
]; 
我TableDemo.component.ts

接檔,我最初擁有的所有列表我現在在頂部:

import { MyColumns } from './mycolumns'; 

然後我在哪裏有列定義之前我有:

columns = MyColumnsDef; 

希望這可以幫助其他人在這一點上。

+0

嗨艾德里安,謝謝你的詳細回覆。 – stephenad

相關問題