我試圖在我的應用程序中使用this包。與WebPack使用babel transpiler的麻煩
它似乎寫在ES6所以我需要一個像babel的轉譯。我已經開始一個新項目,並嘗試以下內容:
- 創建新的索引.html/.js文件進行測試。
npm install audio-effects
npm install gulp gulp-babel babel-preset-es2015
- 創建
.babelrc
試圖從dist
文件夾python -m SimpleHTTPServer
運行此之後,我得到了一個錯誤:index.js:3 Uncaught ReferenceError: require is not defined
。
經過一番挖掘,這是因爲require can't be used client-side。所以接下來我使用WebPack來讓我使用require
。
我走進我的dist
文件夾(其中我transpiled JavaScript是),跑:
webpack ./index.js index.js
但現在我得到錯誤index.js:78 Uncaught SyntaxError: Unexpected token import
。
任何人都可以看到我失蹤(除了NPM-ES6-Gulp-WebPack
教程)嗎?我似乎陷入了WebPack和Transpiling的循環。
的index.html
<!DOCTYPE html>
<html>
<body>
<h4>Welcome</h4>
<button onclick="startAudio()">Start Audio</button>
<script src="js/index.js"></script>
<script type="text/javascript" src="bundle.js" charset="utf-8"></script>
</body>
</html>
index.js(預通天塔/的WebPack - ification)
import {HasAudioContext} from 'audio-effects';
function startAudio() {
console.log("Start Audio...");
let audioContext = null;
if (HasAudioContext) {
console.log("Has Audio CTX");
audioContext = new AudioContext();
}
else {
console.log("No Audio CTX");
}
}
gulpfile.js
var gulp = require("gulp");
var babel = require("gulp-babel");
gulp.task("default", function() {
return gulp.src("src/app.js")
.pipe(babel())
.pipe(gulp.dest("dist"));
});
那麼,webpack需要一個babel-loader來讀取ES6。你有包括嗎?另一種選擇,或許更好,可以使用Gulp和Browserify,它還可以讓你在瀏覽器中需要模塊。這樣你就不需要涉及webpack。 – tomtom
這對我來說是全新的,你有沒有得到一個很好的資源如何一起使用gulp/browserify?謝謝回覆! – TomSelleck
https://www.google.com/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=webpack%20babel%20tutorial –