我想學習TS,我想我有基礎知識,但我真的可能需要som幫助將我的第一個.js文件轉換爲.ts(最新)。在.js中使用以下模式時,使用.ts的最佳模式是什麼(例子將不勝感激)。如何將此javascript轉換爲Typescript?
我的js文件:
var BokaHanterareIndex = {
config: {
showBtn: "#show",
weekPicker: "#pickWeek",
},
init: function (config) {
// provide for custom configuration via init()
if (config && typeof (config) == 'object') {
$.extend(BokaHanterareIndex.config, config);
}
// Cache DOM objects
BokaHanterareIndex.$showBtn = $(BokaHanterareIndex.config.showBtn);
BokaHanterareIndex.$weekPicker = $(BokaHanterareIndex.config.weekPicker);
//Init
BokaHanterareIndex.$weekPicker.datepicker({
language: "sv",
calendarWeeks: true,
autoclose: true,
todayBtn: true,
todayHighlight: true
});
//event
BokaHanterareIndex.$showBtn.click(function() {
BokaHanterareIndex.$weekPicker.datepicker('show');
});
},
showHours: function (message) {
alert(message);
},
}
而且在我的HTML FIL我只是把它像這樣:
BokaHanterareIndex.init({showBtn: "#showButton"});
(有時我需要重寫在配置默認值)
到目前爲止,我試過這個:
interface IBokaHanterareIndexConfig {
showBtn?: string;
weekPicker?: string;
}
class BokaHanterareIndexTest {
private $showBtn: JQuery;
private $weekPicker: JQuery;
private config: IBokaHanterareIndexConfig = {
showBtn: "#show",
weekPicker: "#pickWeek"
}
init(config: IBokaHanterareIndexConfig) {
$.extend(this.config, config);
this.$showBtn = $(this.config.showBtn);
this.$weekPicker = $(this.config.weekPicker);
//Koppla event
this.$showBtn.click(() => {
this.$weekPicker.datepicker('show');
});
}
showHours(message : string): void {
alert(message);
}
}
但是當我嘗試將其初始化像這樣:
var test = new BokaHanterareIndexTest();
test.init({ showBtnn: "#test" });
的showBtnn不beeing標記爲錯誤,儘管它已經不是拼寫正確。 (我使用VS 2013)
問候 每
打字稿是JavaScript的一個超集。這意味着幾乎大部分有效的JavaScript代碼也是有效的打字稿。看着你的代碼,你只需要改變文件擴展名。 – toskv
你必須嘗試一些,有太多不同的有效方法來做到這一點。如果你解釋你有什麼困難,可以幫助 –
更新我的帖子,並添加我到目前爲止所嘗試的內容 –