Dol*_*lls 4 ruby-on-rails gmaps4rails ruby-on-rails-6
我正在使用 Rails 6.0.0.rc1 并希望实现Google-Maps-for-Rails gem。我通过Yarn安装了下划线,并在我的标签中添加了我的 API 所需的谷歌脚本。
我下载gmaps_google.js并将其添加到我的 vendor/js 文件夹中,因为 Rails 6 没有资产管道,而是使用 webpacker。这是我认为要发布的地方,因为我收到以下错误:
ReferenceError: Can't find variable: Gmaps
Run Code Online (Sandbox Code Playgroud)
我更新了我的webpacker.yml文件以查找 vendor/js 文件夹,并且在检查 DOM 时它似乎存在。
webpacker.yml
# Additional paths webpack should lookup modules
# ['app/assets', 'engine/foo/app/assets']
resolved_paths: ['vendor/js']
Run Code Online (Sandbox Code Playgroud)
在我的javascript/packs/application.js我包括一条require("gmaps_google")线。请注意,我在 Highcharts 上遇到了同样的问题,但是能够成功加载脚本但添加了window.Highcharts = Highcharts;但我不确定是否可以使用 require 选项执行相同的操作?
javascript/packs/application.js
require("@rails/ujs").start()
require("turbolinks").start()
require("@rails/activestorage").start()
require("channels")
require('jquery')
require("trix")
require("@rails/actiontext")
window.Highcharts = Highcharts;
import Highcharts from 'highcharts';
import addMore from "highcharts/highcharts-more";
import 'bootstrap'
import 'underscore'
require("gmaps_google")
Run Code Online (Sandbox Code Playgroud)
包.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",
"underscore": "^1.9.1"
},
"version": "0.1.0",
"devDependencies": {
"webpack-dev-server": "^3.7.1"
}
Run Code Online (Sandbox Code Playgroud)
那是因为 中没有export语句gmaps_google.js,您应该在此之前将匿名函数转换为命名函数。
举个例子:
// foo.js
// function need to be converted
(function() {
// function body
}).call(this);
Run Code Online (Sandbox Code Playgroud)
将匿名函数转换为命名函数
// foo.js
function foo() {
// function body
};
export { foo as Foo };
Run Code Online (Sandbox Code Playgroud)
import在另一个文件中调用语句。
// bar.js
import Foo from 'foo';
Foo();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1506 次 |
| 最近记录: |