ionic2 匯入第三方js庫檔案
阿新 • • 發佈:2019-01-31
網上有很多歪果仁寫的匯入第三方js,但是都行不通。
還是要用官方推薦的typings。步驟如下:
1.全域性安裝Typings
npm install -g typings
2.搜尋你想要的外掛,如chartjs
typings search chart.js
搜尋結果如下:
Viewing 1 of 1 NAME SOURCE HOMEPAGE DESCRIPTION VERSIONS UPDATED chartjs dt https://github.com/nnnick/Chart.js 1 2016-07-11T09:45:30.000Z
3.安裝js庫
搜尋到的名稱,選擇一個在專案根目錄底下安裝
npm install chart.js --save
typings install chart.js --save
4,使用js庫
(1)在你需要使用的page包內,在***.html檔案中使用標籤
<ion-content padding class="about">
<canvas id="myChart" width="400" height="400"></canvas>
</ion-content>
(2)在***.ts檔案中匯入,並建立資料
import {Component} from '@angular/core'; import {NavController} from 'ionic-angular'; import * as ChartJs from 'chart.js'; // 匯入chart.js @Component({ templateUrl: 'build/pages/about/about.html' }) export class DataChartPage{ constructor(private navController:NavController) { } ionViewDidLoad() { var canvas = <HTMLCanvasElement> document.getElementById("myChart"); var ctx = canvas.getContext("2d"); // 這裡是關鍵, 不能寫在constructor()中 ChartJs.Line(ctx,{ data: { labels: ["Red", "Blue", "Yellow", "Green", "Purple", "Orange"], datasets: [{ label: '# of Votes', data: [12, 19, 3, 5, 2, 3], backgroundColor: [ 'rgba(255, 99, 132, 0.2)', 'rgba(54, 162, 235, 0.2)', 'rgba(255, 206, 86, 0.2)', 'rgba(75, 192, 192, 0.2)', 'rgba(153, 102, 255, 0.2)', 'rgba(255, 159, 64, 0.2)' ], borderColor: [ 'rgba(255,99,132,1)', 'rgba(54, 162, 235, 1)', 'rgba(255, 206, 86, 1)', 'rgba(75, 192, 192, 1)', 'rgba(153, 102, 255, 1)', 'rgba(255, 159, 64, 1)' ], borderWidth: 1 }] }, options: { scales: { yAxes: [{ ticks: { beginAtZero:true } }] } } }) } }
如果用第2步,typings search沒有搜尋到你要的庫
但是,npm可以搜到相關ts檔案,一定要是ts檔案(比如ng開頭的,如ng-circle-progress),才會有*.d.ts宣告檔案,才可以直接引用 例如:circle-progress這個庫在typings搜尋沒有,但是可以:npm search circle-progress
npm install ng-circle-progress --save
然後第4步引用就一樣了。