[英]Typescript split solution into several projects
在凍結之前我使用了ScriptSharp。 由於TypeScript是一種正在開發的OOP語言,我決定嘗試它。 我使用visual studio(如果重要的話)。 我在ScriptSharp中制作簡單的事情我遇到了麻煩。 我沒想到會那么困難。 我想做的事:
你能給我一些如何使其工作或樣品的指南嗎? 謝謝。
更新:什么是我可以添加對另一個打字稿項目的引用? 如果將引用項目的輸出復制到該項目,那將是很好的。
您可以將模塊組織成類似命名空間的層次結構,而不是擁有程序集和模塊:
內部模塊示例:
module AssemblyA {
export module ModuleA {
export class Example {
}
}
export module ModuleB {
export class Example {
}
}
}
var x = new AssemblyA.ModuleA.Example();
var y = new AssemblyA.ModuleB.Example();
您還可以跨多個文件定義這些內部模塊......
modulea.ts
module AssemblyA {
export module ModuleA {
export class Example {
}
}
}
moduleb.ts
///<reference path="./modulea.ts" />
module AssemblyA {
export module ModuleB {
export class Example {
}
}
}
app.ts
///<reference path="./modulea.ts" />
///<reference path="./moduleb.ts" />
var x = new AssemblyA.ModuleA.Example();
var y = new AssemblyA.ModuleB.Example();
如果您想編寫非常大的應用程序,可以使用外部模塊(文件代表模塊)。
assemblya / modulea.ts
export class Example {
}
assemblya / moduleb.ts
export class Example {
}
app.ts
import ModuleA = require('./assemblya/modulea');
import ModuleA = require('./assemblya/modulea');
var x = new ModuleA.Example();
var y = new ModuleB.Example();
我找到了解決問題的方法:
在項目AssemblyA中:
在項目AssemblyB中:
///<reference path="../AssemblyA/AssemblyA.d.ts" />
<script src="AssemblyA.js"></script>
在項目B中,您可以使用任何名稱空間別名(例如:import AssemblyANS2 = AssemblyA.NS2;)或完全限定名稱。 將類放在不同的文件中,使用相同的模塊名稱,不需要引用ts文件。
我不喜歡的是引用項目沒有任何意義,但我希望在添加引用后自動完成步驟1-2-3-4。 當指定“將javascript輸出合並為一個文件”時,“將javascript輸出重定向到目錄”設置也不起作用。 我可以在第二個選項中指定文件路徑也很奇怪。 我希望這些設置與Path.Combine結合使用。 也許我的解決方案並不理想,但這正是我所需要的。 隨意提出更好的主意。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.