簡體   English   中英

Pickadate不是功能。 滑軌

[英]Pickadate is not a function. Rails

這是我第一次來。 我擔心的是

Uncaught TypeError: $(...).pickadate is not a function

控制台中的錯誤。

在此之前,我能夠包含在Javascript [Chrome中的F12]中檢測到的文件(picker.js,picker.date.js,picker.time.js)。

以下是其他代碼:

_form.html.erb

<div class="pure-control-group">
    <%= t.label :start_date %>
    <%= t.text_field :start_date, class: 'datepicker' %>
</div>

application.js

//= require_self
//= require jquery
//= require rails-ujs
//= require angular
//= require angular-animate
//= require angular-resource


//= require picker
//= require picker.date
//= require picker.time
//= require globals
//= require users

globals.js

$(document).ready(function(){

    $('p').click(function(){
        $(this).hide();
    });

    $('.datepicker').pickadate();

});

對我來說,這樣的問題是由我正在使用或缺少的jQuery引起的。 我不得不使用yarn安裝jquery:

yarn add jquery

完成后,應將其包含在您的node_modules文件夾中。 確認您在config/initializers/assets.rb具有以下行:

Rails.application.config.assets.paths << Rails.root.join('node_modules')

然后,您可以在assets/application.js包含jquery,如下所示:

//= require jquery/dist/jquery

由於某種原因,我無法獲得jquery-rails包。 您可以在此處找到具有更詳細說明的相關資源,盡管它是用於在導軌上安裝引導程序的資源,但它與導軌具有相同的概念。

另外,請確保您在pickadate-railspickadate-rails gem並已運行$ bundle install 將這些更改保留在application.js

//= require picker
//= require picker.date
//= require picker.time

進行更改后,也重新啟動服務器。

有關如何在Rails上實現jquery-rails的更多信息,請查看以下鏈接: https : //medium.com/@chantaljustamond/implementing-pickadate-js-on-a-rails-app-c47af58c33af

你可以試試這個

$(document).ready(function(){

    $('p').click(function(){
        $(this).hide();
    });

    $('.datepicker').pickadate(
    selectMonths: true, // Creates a dropdown to control month
    selectYears: 3 // Creates a dropdown of 15 years to control year
  });
);

});

或者,如果我沒有解決您的問題,那么您可以嘗試在gemfile中添加gem的rails方式,然后運行命令。 最佳的寶石是Pickadate-rails

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM