我想用@types定義與TypeScript 2.0.3建立一個應用程序,並希望使用基金會網站和捆綁與webpack的一切。 只要我試圖導入基礎,我得到控制檯錯誤消息,jQuery沒有定義。 當我不導入基礎時,jQuery工作正常!Typescript 2.0.3與@types定義,Webpack,基金會,jQuery沒有定義
如果有人能解釋,我做錯了什麼以及如何加載基礎Tooltip從一個.ts文件,這將是非常棒的。
您可以檢查出在這裏完整的源:https://github.com/Der-Alex/typescript-foundation-webpack
什麼我做的是一種基本的: 我有一個./app文件夾。裏面有一個app.ts,main.scss和index.html。
我安裝了以下NPM包:
...
"dependencies": {
"@types/foundation-sites": "^6.1.28",
"@types/jquery": "^2.0.33",
"css-loader": "^0.25.0",
"foundation-sites": "^6.2.3",
"jquery": "^2.1.0",
"node-sass": "^3.10.1",
"sass-loader": "^4.0.2",
"style-loader": "^0.13.1",
"ts-loader": "^0.9.1",
"typescript": "^2.0.3",
"webpack": "^1.13.2"
},
"devDependencies": {
"webpack-dev-server": "^1.16.2"
}
我webpack.config.js:
module.exports = {
entry: './app/app.ts',
output: {
filename: './app/bundle.js'
},
resolve: {
extensions: ['', '.ts', '.js']
},
module: {
loaders: [
{
test: /\.ts$/, loader: 'ts-loader'
},
{
test: /\.scss/, loaders: ['style', 'css', 'sass']
}
]
}
};
我./app/app.ts:
import './main.scss';
import * as $ from 'jquery';
import 'foundation-sites';
$(() => {
$(document).foundation();
});
有沒有轉儲/編譯錯誤。當我運行webpack-dev-server並在瀏覽器中檢查結果時,樣式被加載,但是我得到了這個錯誤消息'jQuery沒有定義'。瀏覽器理解$,但例如不是$(...)。on(...); 那麼我在做什麼錯了?
非常感謝你,Stubb0rn! –
我不得不將窗口$改爲window ['jQuery']。 TypeScript不允許在其中添加屬性。句法。但現在它起作用了!謝謝! –