我是Angular 2的新手。我對我的angular 2項目使用ng2-charts。 NG2-圖表需要chart.js之被嵌入在我的應用程序標題,因爲這樣的:Uncaught ReferenceError:require在Angular 2 webpack全局庫安裝中沒有定義
<script src="node_modules/chart.js/src/chart.js"></script>
從我的index.html我無法訪問nodes_modules(錯誤:GET http://localhost:4200/node_modules/chart.js/dist/Chart.js)。據我所知,這是因爲node_modules沒有「編譯」到dist文件夾中。
因此我需要添加chart.js之作爲一個全球圖書館安裝(如下解釋:https://github.com/angular/angular-cli#global-library-installation)
當我這樣做,我得到「未捕獲的ReferenceError:要求沒有定義」。我認爲這是因爲chart.js在systemJS之前被加載,因此不知道'require'。我嘗試在應用程序[0] .scripts中的chart.js之前添加systemJS,但這也不起作用。
這裏是我的角cli.json:
{
"project": {
"version": "1.0.0-beta.16",
"name": "poc1-iot-monitor-frontend"
},
"apps": [
{
"root": "src",
"outDir": "dist",
"assets": "assets",
"index": "index.html",
"main": "main.ts",
"test": "test.ts",
"tsconfig": "tsconfig.json",
"prefix": "app",
"mobile": false,
"styles": [
"styles.css"
],
"scripts": [
"../node_modules/systemjs/dist/system.src.js",
"../node_modules/chart.js/src/chart.js"
],
"environments": {
"source": "environments/environment.ts",
"dev": "environments/environment.ts",
"prod": "environments/environment.prod.ts"
}
}
],
"addons": [],
"packages": [],
"e2e": {
"protractor": {
"config": "./protractor.conf.js"
}
},
"test": {
"karma": {
"config": "./karma.conf.js"
}
},
"defaults": {
"styleExt": "css",
"prefixInterfaces": false
}
}
我怎麼會去嵌入chart.js之或任何其他外部JS庫?
我正在使用angular-cli:1.0.0-beta.16。節點:4.4.2。 npm:3.10.6。 webpack 2.1.0-beta.22。
啊!花了這麼長時間來追蹤這個問題,我也在做同樣的事情。 – Joe