gpt4 book ai didi

javascript - Grails Assets 管道和外部JS库

转载 作者:行者123 更新时间:2023-12-02 15:49:43 24 4
gpt4 key购买 nike

我正在尝试从grails 2迁移到grails 3,因此我必须使用asset-pipeline插件来管理我的Java脚本文件。问题是我使用了几个外部库,例如全局化,ajax-solr。它们很大,有多个相互依赖的文件。他们还对jquery有很多依赖关系,并且经常使用命名空间。因此,当我简单地将它们复制到asset/javascript中时,控制台中会出现很多异常,例如

Uncaught ReferenceError: AjaxSolr is not defined
Uncaught ReferenceError: jQuery is not defined
ParameterHashStore.js:13 Uncaught TypeError: Cannot read property 'extend' of undefined

第一个问题是这些库应该放在哪里?在子文件夹的 asset/javascript中?
还是文档建议使用 asset/lib? (添加到此组织集合中的常见文件夹是“lib”文件夹。此文件夹在组织第三方库(如jQuery或Bootstrap- http://www.asset-pipeline.com/manual/)中很有用)。如果是,如何强制 Assets 插件从那里拿起?

第二种如何解决依赖关系的问题?是否应该使用 //= require指令修改globalize和ajax-solr文件?

最佳答案

我设法使它起作用。我将全局化放置在lib文件夹(grails-app/assets/lib/globalize/)中,并使用所有导入创建了一个文件globalize-manifest.js:

//= require globalize/lib/globalize
//= require globalize/lib/cultures/globalize.culture.pl-PL.js
...

然后当我需要使用全局化时,我使用
// require globalize-manifest

关于javascript - Grails Assets 管道和外部JS库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41538185/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com