Saya sedang menulis aplikasi baru menggunakan ES6
sintaks (JavaScript) melalui babel
transpiler dan preset-es2015
plugin, serta semantic-ui
untuk gayanya.
index.js
import * as stylesheet from '../assets/styles/app.scss';
import * as jquery2 from '../dist/scripts/jquery.min';
import * as jquery3 from '../node_modules/jquery/dist/jquery.min';
console.log($('my-app'));
index.html
<!DOCTYPE html>
<html lang="fr">
<head>
<body>
<script src="dist/app.js"></script>
</body>
</html>
Struktur proyek
.
├── app/
│ ├── index.js
├── assets/
├── dist/
│ ├── scripts/
│ │ ├── jquery.min.js
├── index.html
├── node_modules/
│ ├── jquery/
│ │ ├── dist/
│ │ │ ├── jquery.min.js
├── package.json
└── tests/
package.json
…
"scripts": {
"build:app": "browserify -e ./app/index.js -o ./dist/app.js",
"copy:jquery": "cpy 'node_modules/jquery/dist/jquery.min.js' ./dist/scripts/",
…
},
"devDependencies": {
"babel-core": "6.3.x",
"babel-preset-es2015": "6.3.x",
"babelify": "7.2.x",
"cpy": "3.4.x",
"npm-run-all": "1.4.x",
"sassify": "0.9.x",
"semantic-ui": "2.1.x",
…
},
"browserify": {
"transform": [
[ "babelify", { "presets": [ "es2015"]}],
[ "sassify", { "auto-inject": true}]
]
}
Pertanyaan
Menggunakan <script>
tag klasik untuk mengimpor jquery
berfungsi dengan baik, tetapi saya mencoba menggunakan sintaks ES6.
- Bagaimana cara mengimpor
jquery
untuk memenuhisemantic-ui
penggunaan sintaks impor ES6? - Haruskah saya mengimpor dari
node_modules/
direktori atau milik sayadist/
(tempat saya menyalin semuanya)?
dist
tidak masuk akal karena itu adalah folder distribusi Anda dengan aplikasi siap produksi. Membangun aplikasi Anda harus mengambil apa yang ada di dalam modul node dan menambahkannya ke folder dist, termasuk jQuery.