私は webpack とタイピングが初めてで、新しいプロジェクトをセットアップしようとしています。
webpack をグローバルにインストールしました。
問題は
entrypoint.ts のコードを次のようなモジュールに入れることはできません
モジュール taxCalculator{ [.....entrypoint.ts コード.......] }
ポイント1を回避するとwebpackビルドは正常に機能しますが、mainPageControllerの作成中にentrypoint.tsでtestClassを使用できません。アプリケーションをロードすると、コンソールに次のエラーが表示されます。
taxCalculator.bundle.js:13307 ReferenceError: taxCalculator が定義されていません
私の entrypoint.ts と 2013 では、「require」テキストの下に赤いエラー行が表示されます。
私はすでにインターネットで多くのことを参照しましたが、何も見つけることができず、4〜5時間無駄にしました。誰かが私が間違っていることを教えてくれますか.
以下は、参照用の私のファイルです。
パッケージ.json
{
"name": "taxcalculator",
"version": "1.0.0",
"description": "To Calculate Tax",
"scripts": {
"build": ""
},
"author": "temp",
"license": "ISC",
"devDependencies": {
"ts-loader": "1.3.3",
"typescript": "2.0.0",
"typings": "2.1.0",
"webpack": "1.14.0"
},
"dependencies": {
"angular": "1.5.0"
}
}
tsconfig.json
{
"compilerOptions": {
"target": "es5"
}
}
型付け.json
{
"dependencies": {
"angular": "registry:dt/angular#1.5.0+20170111164943"
}
}
entrypoint.ts
/// <reference path="../../typings/index.d.ts"/>
/// <reference path="TestClass.ts"/>
var angular = require('angular');
var app = angular.module('taxCalculatorApp', []);
app.controller("mainPageController", ["$scope", function(scope) {
scope.testString = "My String Value";
scope.myObj = new taxCalculator.TestClass("Constructor string");
}])
index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf8"/>
<title>Tax Calculator</title>
</head>
<body>
<div ng-app="taxCalculatorApp">
<div ng-controller="mainPageController">
<div>{{testString}}</div>
<div>{{myObj.myString}}</div>
</div>
Loading.....!!
</div>
<script src="../dist/taxCalculator.bundle.js"></script>
</body>
</html>
testclass.ts
module taxCalculator {
export class TestClass {
constructor(public myString) {
}
}
}