質問概要
- Nuxtの勉強をしているのですが、$記号の使い方がよくわかっていません。
this.$axios
でimportなしにaxiosが使えるのはなぜでしょうか?- また、$記号の使い方に関する正式なドキュメント等はどこかにありますか?
$を使った例
- 例えば、NuxtにExpressを導入し、axiosを使って連携する場合、下記のようなコードを書きます。
js
1 export default { 2 asyncData(app) { 3 return app.$axios.get('/api/users') 4 .then((res) =>{ 5 return { result: res.data } 6 }) 7 }, 8 ... 9 }
- また、メソッド呼び出しする場合は次のようになると思います。
js
1 methods: { 2 test() { 3 this.$axios.get('api/users') 4 .then((res) => { 5 this.result = res.data 6 } 7 }
- この場合、
import axios from 'axios'
とはせずにapp.$axios
と書ける理由がよくわかりません。 - URLのパラメーターを取得するときも、
this.$route.params
といった記述が見られるので、axiosに限定した話ではなさそうです。
Javascript系での$の使われ方
- $記号は、Javascriptではただの文字列ですし、Typescriptでも
${ a + b }
といった $と{}を使った記法はありますが、$記号単体を使った記述方法は出てきません。 - 有名どころではjQueryでよく使っていましたが
$()
な使い方なので関係なさそうです。 - VueやNuxtのドキュメントにも$記号に関する情報が見当たりません(見落としてるだけかもしれません)
- おそらくは$を使うことでimport文を省略できるのだと思いますが、それはJSなのか、TSなのか、VueなのかNuxtなのか誰がやってくれているのでしょうか
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/07 05:21