Javascript 无法识别Easy Auto Complete
当我的用户在我的web应用程序上键入播放器的伪代码时,我想使用easy autocomplete添加建议 但它不起作用 以下是我得到的信息:Javascript 无法识别Easy Auto Complete,javascript,jquery,ruby-on-rails,easyautocomplete,Javascript,Jquery,Ruby On Rails,Easyautocomplete,当我的用户在我的web应用程序上键入播放器的伪代码时,我想使用easy autocomplete添加建议 但它不起作用 以下是我得到的信息: people.js:7 Uncaught TypeError: $input.easyAutocomplete is not a function at HTMLDocument.<anonymous> (people.js:7) at Object../node_modules/turbolinks/dist/turbolin
people.js:7 Uncaught TypeError: $input.easyAutocomplete is not a function
at HTMLDocument.<anonymous> (people.js:7)
at Object../node_modules/turbolinks/dist/turbolinks.js.e.dispatch (turbolinks.js:75)
at r.notifyApplicationAfterPageLoad (turbolinks.js:994)
at r.pageLoaded (turbolinks.js:948)
at turbolinks.js:872
以下是我的布局:
app/views/layouts/application.html.erb
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %>
<script src="//code.jquery.com/jquery-1.11.2.min.js"></script>
<%= javascript_pack_tag 'application', 'data-turbolinks-track': 'reload', defer: true %>
<%= javascript_pack_tag 'people', 'data-turbolinks-track': 'reload' %>
我也试过,但效果不太好:
const { environment } = require('@rails/webpacker')
const webpack = require('webpack');
// Preventing Babel from transpiling NodeModules packages
environment.loaders.delete('nodeModules');
// Bootstrap 4 has a dependency over jQuery & Popper.js:
environment.plugins.prepend('Provide',
new webpack.ProvidePlugin({
$: 'jquery',
jQuery: 'jquery',
Popper: ['popper.js', 'default']
})
);
module.exports = environment
如果你需要更多的信息,我随时准备回答
提前感谢您以错误的方式包含javascript文件。 正如helper方法doc所说:
# DO:
#
# <%= javascript_pack_tag 'calendar', 'map' %>
#
# DON'T:
#
# <%= javascript_pack_tag 'calendar' %>
# <%= javascript_pack_tag 'map' %>
#做:
#
#
#
#不要:
#
#
#
就你而言:
<%= javascript_pack_tag 'application', 'people', 'data-turbolinks-track': 'reload', defer: true %>
您好,我尝试了这种方法,但我的浏览器上的控制台出现了相同的错误。您在哪里需要easyAutocomplete?您好,我终于用Alogilia和stimulus解决了这个问题。感谢您正在从CDN加载jquery
,但您似乎提供了一个本地路径$:“jquery/src/jquery”
是的,这意味着我应该更改我的environment.js文件?或者我可以用另一种方式加载Jquery?另外,当我在控制台中键入$().jquery
时,它会将jquery的版本打印给我,不知道它是否有助于你看得更清楚?老实说,我对webpack一无所知,但你配置它的方式似乎有误。好的,我尝试了其他方法,但仍然不起作用(你可以看到编辑)
# DO:
#
# <%= javascript_pack_tag 'calendar', 'map' %>
#
# DON'T:
#
# <%= javascript_pack_tag 'calendar' %>
# <%= javascript_pack_tag 'map' %>
<%= javascript_pack_tag 'application', 'people', 'data-turbolinks-track': 'reload', defer: true %>