我有一个包含一些方法和第三方库集成的外部JS文件。现在,我想将这个JS文件作为模块包含在我的Ionic 2 rc构建项目中。我遵循的步骤如下:
declare module 'Appgeneral';
中的 src/declarations.d.ts
在<script>
中包含index.html
标记,因为它是一个JS文件
在home.ts
中创建对象:var appgeneral = new Appgeneral();
Appgeneral.js包含以下代码:
function Appgeneral(){}
Appgeneral.prototype.methodCall = function() {
console.log("Done!");
return true;
};
应使用新创建的对象home.ts
在appgeneral
中访问这些方法。它在beta.11版本中运行良好。但是,升级到rc版本后,我收到错误说明无法解析模块Appgeneral
。
另外,我将Appgeneral.js
转换为导出整个班级的Appgeneral.ts
,如下所示:
module Appgeneral{
export class Appgeneral{
public methodCall() {
console.log("Done!");
return true;
}
}
}
然后,我尝试将其导入home.ts
,如下所示:import { Appgeneral } from './src/ts/Appgeneral'
。但错误仍然存在。
找不到姓名&#39; Appgeneral&#39;。 L14:构造函数(public navCtrl:NavController, L15:public appgeneral:Appgeneral){
Third Party libs提供的文档适用于npm
上提供的外部库。但是,我想直接在应用程序中包含我的第三方库。
这是我的ionic info
:
Cordova CLI: 6.3.1
Ionic CLI Version: 2.1.0
Ionic App Lib Version: 2.1.0-beta.1
ios-deploy version: 1.8.3
ios-sim version: 5.0.4
OS: Mac OS X El Capitan
Node Version: v6.8.0
Xcode version: Xcode 8.0 Build version 8A218a
这些是我的package.json
依赖项:
"dependencies": {
"@angular/common": "^2.0.0",
"@angular/compiler": "^2.0.0",
"@angular/compiler-cli": "0.6.2",
"@angular/core": "^2.0.0",
"@angular/forms": "^2.0.0",
"@angular/http": "^2.0.0",
"@angular/platform-browser": "^2.0.0",
"@angular/platform-browser-dynamic": "^2.0.0",
"@angular/platform-server": "^2.0.0",
"@ionic/storage": "^1.0.3",
"ionic-angular": "^2.0.0-rc.1",
"ionic-native": "^2.2.3",
"ionicons": "^3.0.0",
"rxjs": "5.0.0-beta.12",
"zone.js": "^0.6.21"
}