質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

Q&A

解決済

1回答

2532閲覧

Vue.js+Railsでdatepikerを使いたいが、Uncaught Error: Cannot find module "pikaday"が出る[詳しいソースコードあり]

anonyrabbit

総合スコア78

Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

0グッド

1クリップ

投稿2018/08/30 10:13

前提・実現したいこと

ここに質問の内容を詳しく書いてください。
Vue.js+Railsでdatepikerを使いたいが、Uncaught Error: Cannot find module "pikaday"が出てほとほと困り果てています。参考にしているのはこちらのページです。
https://enrian.github.io/vue-pikaday/guide/installation.html

このようにやっているのですが、なぜかうまくいきません。
ご回答よろしくお願いいたします。

発生している問題・エラーメッセージ

vue-pikaday.js:1 Uncaught Error: Cannot find module "pikaday" at webpackMissingModule (vue-pikaday.js:1) at vue-pikaday.js:1 at Object.<anonymous> (vue-pikaday.js:1) at Object.<anonymous> (vue-pikaday.js:2) at __webpack_require__ (bootstrap 39f035acf474c34c6376:19) at Object.<anonymous> (todo.js:1) at __webpack_require__ (bootstrap 39f035acf474c34c6376:19) at bootstrap 39f035acf474c34c6376:62 at bootstrap 39f035acf474c34c6376:62 webpackMissingModule @ vue-pikaday.js:1 (anonymous) @ vue-pikaday.js:1 (anonymous) @ vue-pikaday.js:1 (anonymous) @ vue-pikaday.js:2 __webpack_require__ @ bootstrap 39f035acf474c34c6376:19 (anonymous) @ todo.js:1 __webpack_require__ @ bootstrap 39f035acf474c34c6376:19 (anonymous) @ bootstrap 39f035acf474c34c6376:62 (anonymous) @ bootstrap 39f035acf474c34c6376:62

該当のソースコード

Javascript

1<template> 2 <vue-pikaday 3 v-model="now" 4 placeholder="Pick a date" 5 @focus="triggerFocus()" 6 @blur="triggerBlur()" 7 /> 8</template> 9 10<script> 11 import '@enrian/vue-pikaday'; 12 13 export default { 14 data() { 15 return { 16 now: null 17 } 18 }, 19 methods: { 20 triggerFocus() { 21 console.log('focus triggered'); 22 }, 23 triggerBlur() { 24 console.log('blur triggered') 25 } 26 } 27 } 28</script> 29

Javascript

1import Vue from 'vue/dist/vue.esm.js' 2import VuePikaday from '@enrian/vue-pikaday'; 3Vue.use(VuePikaday); 4var app = new Vue({ 5 el: '#app', 6 components: { 7 'navbar': Header, 8 } 9}); 10

slim

1#datepicker-default.form-group 2 label.col-sm-3.control-label 3 | Default 4 .col-sm-9.form-inline 5 .input-group.date 6 input.form-control[type="text" value="20170621"] 7 .input-group-addon 8 i.fa.fa-calendar 9 10#date-picker 11 input 12 13#app 14 navbar 15= javascript_pack_tag 'todo' 16 17javascript: 18 $(function () { 19 //Default 20 $('#datepicker-default .date').datepicker({ 21 format: "yyyy年mm月dd日", 22 language: 'ja', 23 autoclose: true 24 }); 25 26 }); 27 $('#datepicker').datepicker(); 28 29

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

Pikaday と moment.js はインストールしてますか?

$ npm install pikaday moment

投稿2018/08/30 11:07

cither

総合スコア61

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

anonyrabbit

2018/08/30 11:50

で、で、できましたー!!!ありがとうございます!!! momentもinstallしないといけないなんて・・・。なぜわかったのですか? ちなみに、CSSがきいてないのですがお分かりでしたら教えていただけないでしょうか・・?
anonyrabbit

2018/08/30 11:54

ってすいません、moment使うって書いてありましたね。失礼いたしました。 CSSについては未解決です・・・。
anonyrabbit

2018/08/30 12:01

どのjdファイルにimport '@enrian/vue-pikaday/dist/vue-pikaday.min.css'; って入れてもCSSが効きません。。
cither

2018/08/30 12:17

`stylesheet_pack_tag` を呼んでないとかですかね。
anonyrabbit

2018/08/30 12:23

たった今できたのですが、application.scssに @import "vue-pikaday.min"; を追加したらできました。これが正しいやり方なのかはいまいちわかっていないです・・・。 おっしゃる通り`stylesheet_pack_tag`はどこでも使っていないです。 どこかで使用する必要があるのでしょうか・・・?
cither

2018/08/30 12:33

3rd party の css ならそのやり方でも構わないと思いますよ。自分で作成した Vue コンポーネントに `<style>` で 定義した css 等は `stylesheet_pack_tag` で読み込む必要があります。
anonyrabbit

2018/08/30 21:57

そうなんですね、自分でもっと調べて学んでいこうと思います。ご回答、本当にありがとうございました!!!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問