我正在使用 Rails 6.0.0.rc1 并希望实现lazy_high_charts gem。我通过Yarn安装了 Highcharts,但收到以下错误:
ReferenceError: Can't find variable: Highcharts
其中指的是以下代码行:
window.chart = new Highcharts.Chart(options);
我检查了是否通过 DOM 存在 Highcharts,它确实存在。如果我<script src="https://code.highcharts.com/highcharts.js"></script>
在标签中添加脚本,<head>
它会很好地加载,这很奇怪。任何帮助,将不胜感激。
javascript/packs/application.js
require("@rails/ujs").start()
require("turbolinks").start()
require("@rails/activestorage").start()
require("channels")
require('jquery')
require("trix")
require("@rails/actiontext")
import Highcharts from 'highcharts';
import 'bootstrap'
包.json
{
"name": "app_name",
"private": true,
"dependencies": {
"@rails/actioncable": "^6.0.0-alpha",
"@rails/actiontext": "^6.0.0-rc1",
"@rails/activestorage": "^6.0.0-alpha",
"@rails/ujs": "^6.0.0-alpha",
"@rails/webpacker": "^4.0.7",
"bootstrap": "^4.3.1",
"highcharts": "^7.1.2",
"jquery": "^3.4.1",
"popper.js": "^1.15.0",
"trix": "^1.0.0",
"turbolinks": "^5.2.0"
},
"version": "0.1.0",
"devDependencies": {
"webpack-dev-server": "^3.7.1"
}
}
宝石文件
source 'https://rubygems.org'
git_source(:github) { |repo| "https://github.com/#{repo}.git" }
ruby '2.6.3'
gem 'rails', '~> 6.0.0.rc1'
gem 'pg', '>= 0.18', '< 2.0'
gem 'puma', '~> 3.11'
gem 'sass-rails', '~> 5'
gem 'webpacker', '~> 4.0'
gem 'turbolinks', '~> 5'
gem 'jbuilder', '~> 2.5'
gem 'image_processing', '~> 1.2'
gem 'bootsnap', '>= 1.4.2', require: false
gem 'lazy_high_charts'
group :development, :test do
gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
end
group :development do
gem 'web-console', '>= 3.3.0'
gem 'listen', '>= 3.0.5', '< 3.2'
gem 'spring'
gem 'spring-watcher-listen', '~> 2.0.0'
end
group :test do
gem 'capybara', '>= 2.15'
gem 'selenium-webdriver'
gem 'webdrivers'
end
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]