回答編集履歴

1

追記

2018/11/18 11:09

投稿

NozomuIkuta
NozomuIkuta

スコア1260

test CHANGED
@@ -27,3 +27,65 @@
27
27
  `head`という設定の名前がややこしいですが、Nuxt.jsが`vue-meta`というライブラリを利用していて、そのライブラリで使える設定が使えるということです。
28
28
 
29
29
  そちらのライブラリも調べてみてください。
30
+
31
+
32
+
33
+ ## 追記(2018/11/18)
34
+
35
+ 質問の意図をうまく汲み取れていない部分がありましたので、追記します。
36
+
37
+
38
+
39
+ 質問の「全ページに適用したい処理が書いているcommon.js」については、以下の対応が考えられます。
40
+
41
+
42
+
43
+ 「Vueアプリケーションが実行される前に何かしたい」場合は、
44
+
45
+ `/plugins/common.js`を作成し`nuxt.config.js`の`plugins`にパスを記述してください([参考](https://ja.nuxtjs.org/api/configuration-plugins/))。
46
+
47
+
48
+
49
+ 「Vueアプリケーションでルーティングが行われるタイミングで何かしたい」場合は、
50
+
51
+ `/middleware/common.js`を作成して、コンポーネントのファイルに設定してください([参考1](https://ja.nuxtjs.org/api/pages-middleware)、[参考2](https://ja.nuxtjs.org/guide/routing#%E3%83%9F%E3%83%89%E3%83%AB%E3%82%A6%E3%82%A7%E3%82%A2))。
52
+
53
+
54
+
55
+ もしくは[モジュール](https://ja.nuxtjs.org/guide/modules)が求めているものかもしれませんが、
56
+
57
+ 長くなるので説明は省略します。
58
+
59
+
60
+
61
+ ---
62
+
63
+
64
+
65
+ `assets`については、以下の説明をもって最初の回答を訂正いたします。
66
+
67
+
68
+
69
+ `/assets`ディレクトリにあるものは、ビルドする際にwebpackで操作されることを意図しています。
70
+
71
+ また、`/assets`ディレクトリには画像やCSSをいれておくのが、本来Nuxtが意図した使い方です。
72
+
73
+
74
+
75
+ webpackで操作されることを意図しないファイルは`/static`ディレクトリに配置してください。
76
+
77
+ `/static/xxx`は、ビルド時に`/xxx`として、そのままコピーされます。
78
+
79
+ faviconなどはビルドの必要が無いのでここが自然です。
80
+
81
+
82
+
83
+ `assets`と`static`については[こちら](https://ja.nuxtjs.org/guide/assets)を参照してください。
84
+
85
+
86
+
87
+ ---
88
+
89
+
90
+
91
+ okpkさんのおっしゃる通り、`nuxt.config.js`の`head`プロパティには、CDNで配布されているライブラリなどをwebpackのビルドファイルに含まずにリンクする場合に有用です。