質問編集履歴
3
追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
javascript初心者の高校生です。よろしくお願いいたします。
|
2
2
|
|
3
|
-
使用したライブラリのバージョンはwebpackが4.20.1、webpack-cliが3.1.1です。
|
3
|
+
使用したライブラリのバージョンはwebpackが4.20.1、webpack-cliが3.1.1です。([webpack公式ドキュメント](https://webpack.js.org/concepts/)
|
4
4
|
|
5
5
|
とても初歩的な質問ですが、webpackを使ってjavascript(es6以降)を圧縮する際にメソッド名と変数名が勝手にeやiに置き換わってしまうのですがこの機能を切って、ただ単に改行やスペース、コメントだけを削除させるようにするにはどうすればよいのでしょうか。
|
6
6
|
おそらくwebpack.config.jsに何かオプションを指定することができるのだろうとは思うのですが、公式ドキュメントを読んでもどれがそれにあたるのかわからなかったので、、、
|
2
webpackのバージョンとコードの書き方を正しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,12 +1,14 @@
|
|
1
1
|
javascript初心者の高校生です。よろしくお願いいたします。
|
2
2
|
|
3
|
+
使用したライブラリのバージョンはwebpackが4.20.1、webpack-cliが3.1.1です。
|
4
|
+
|
3
5
|
とても初歩的な質問ですが、webpackを使ってjavascript(es6以降)を圧縮する際にメソッド名と変数名が勝手にeやiに置き換わってしまうのですがこの機能を切って、ただ単に改行やスペース、コメントだけを削除させるようにするにはどうすればよいのでしょうか。
|
4
6
|
おそらくwebpack.config.jsに何かオプションを指定することができるのだろうとは思うのですが、公式ドキュメントを読んでもどれがそれにあたるのかわからなかったので、、、
|
5
7
|
オプション名と指定する場所を教えていただければ幸いです。
|
6
8
|
|
7
9
|
もう1点、次のようなコードを書き、
|
8
|
-
=============================================================
|
9
10
|
<test.js>
|
11
|
+
```Javascript
|
10
12
|
const webpack = require("webpack");
|
11
13
|
const fs = require("fs");
|
12
14
|
|
@@ -28,17 +30,23 @@
|
|
28
30
|
console.log(next.toString());
|
29
31
|
});
|
30
32
|
|
33
|
+
```
|
31
34
|
<in.js>
|
35
|
+
```Javascript
|
32
36
|
function test(){
|
33
37
|
const te = 34;
|
34
38
|
console.log(te);
|
35
39
|
}
|
36
|
-
|
40
|
+
```
|
41
|
+
コマンドプロンプトで
|
42
|
+
```
|
43
|
+
node test.js ./src/js/in.js
|
44
|
+
```のように実行したところ、
|
45
|
+
```
|
46
|
+
!function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=0)}([function(e,t){}]);
|
37
47
|
|
38
|
-
|
48
|
+
```
|
39
49
|
|
40
|
-
!function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=0)}([function(e,t){}]);
|
41
|
-
|
42
50
|
というような圧縮どころかむしろ長くなったコードが出力される上、置き換えられないはずの34という値すらも消えているのですがこれはどういうことなのでしょうか。正直全くわからないのでご指摘いただければありがたいです。
|
43
51
|
|
44
52
|
よろしくお願いいたします。
|
1
追記 結果がおかしい点
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,7 +1,44 @@
|
|
1
|
-
javascript初心者です。よろしくお願いいたします。
|
1
|
+
javascript初心者の高校生です。よろしくお願いいたします。
|
2
2
|
|
3
3
|
とても初歩的な質問ですが、webpackを使ってjavascript(es6以降)を圧縮する際にメソッド名と変数名が勝手にeやiに置き換わってしまうのですがこの機能を切って、ただ単に改行やスペース、コメントだけを削除させるようにするにはどうすればよいのでしょうか。
|
4
4
|
おそらくwebpack.config.jsに何かオプションを指定することができるのだろうとは思うのですが、公式ドキュメントを読んでもどれがそれにあたるのかわからなかったので、、、
|
5
5
|
オプション名と指定する場所を教えていただければ幸いです。
|
6
6
|
|
7
|
+
もう1点、次のようなコードを書き、
|
8
|
+
=============================================================
|
9
|
+
<test.js>
|
10
|
+
const webpack = require("webpack");
|
11
|
+
const fs = require("fs");
|
12
|
+
|
13
|
+
var inputFile = process.argv[2];
|
14
|
+
|
15
|
+
const compiler = webpack({
|
16
|
+
mode : "production",
|
17
|
+
entry : inputFile,
|
18
|
+
output : {
|
19
|
+
filename : "tmp.js",
|
20
|
+
},
|
21
|
+
optimization : {
|
22
|
+
minimize : true,
|
23
|
+
}
|
24
|
+
});
|
25
|
+
|
26
|
+
compiler.run((err,stats) => {
|
27
|
+
var next = fs.readFileSync("./dist/tmp.js");
|
28
|
+
console.log(next.toString());
|
29
|
+
});
|
30
|
+
|
31
|
+
<in.js>
|
32
|
+
function test(){
|
33
|
+
const te = 34;
|
34
|
+
console.log(te);
|
35
|
+
}
|
36
|
+
=============================================================
|
37
|
+
|
38
|
+
node test.js ./src/js/in.jsのように実行したところ、
|
39
|
+
|
40
|
+
!function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=0)}([function(e,t){}]);
|
41
|
+
|
42
|
+
というような圧縮どころかむしろ長くなったコードが出力される上、置き換えられないはずの34という値すらも消えているのですがこれはどういうことなのでしょうか。正直全くわからないのでご指摘いただければありがたいです。
|
43
|
+
|
7
44
|
よろしくお願いいたします。
|