تخطي للذهاب إلى المحتوى
القائمة
لقد تم الإبلاغ عن هذا السؤال
4 الردود
5788 أدوات العرض

Hi, 


We are working on a custom module for our site on Odoo 16 and its needs to load a JS file to the frontend of the site. So we have added it as an asset on the manifest of the module as per the documentation. However, it is not loading for some reason. Here is our manifest: 

# -*- coding: utf-8 -*-
{
'name': "soloRV_custom_works",

'summary': """
SoloRV Custom Codes
""",

'description': """
Modifications for the SoloRV Project
""",
'author': "Click Theory",
'website': "Redacted",
'category': 'Uncategorized',
'version': '0.1',
'depends': ['base', 'product', 'sale', 'account', 'website', 'website_sale'],
'data': [
'views/templates.xml',
],
'assets': {
'web.assets_frontend': [
'/soloRV_custom_works/static/src/js/custom.js',
'/soloRV_custom_works/static/src/css/custom.css',
],
},
"auto_install": False,
"application": True,
"installable": True,
}

The CSS loads just fine but for some reason the JS is not loading. I have tried everything I could think of without any luck. Any help is appreciated.

الصورة الرمزية
إهمال
أفضل إجابة

Try

'assets': {
'web.assets_backend': [
'/soloRV_custom_works/static/src/js/custom.js',
'/soloRV_custom_works/static/src/css/custom.css',
],
},



الصورة الرمزية
إهمال
أفضل إجابة

Hello Sean,

did you find the solution?
In the same way, I added the JS and CSS files to the manifest, but none of them are added to the website. 
I'm really tired of trying to fix the problem!

'assets': {
​ 'web.assets_frontend': [ 
​ '/energy_website/static/scss/theme.scss',
​​ '/energy_website/static/js/script.js',
​ '/energy_website/static/scss/style.scss',
​ '/energy_website/static/js/myscript.js', ] 
 }
 do you have an idea?

الصورة الرمزية
إهمال
الكاتب أفضل إجابة

I was able to fix this. The issue wasn't with Odoo, it was with me using window.onload on my script. I am assuming it conflicts with Odoo's lazy load or something in some way. 

الصورة الرمزية
إهمال
أفضل إجابة

Hi,

Check if the js file path is correct. 

Also Try by removing the "/" in front of the module name.

eg:

'assets': {
   'web.assets_frontend': [

        'soloRV_custom_works/static/src/css/custom.css',
        'soloRV_custom_works/static/src/js/custom.js',
],
},
 
or
 
'assets': {
  'web.assets_frontend': [

     'soloRV_custom_works/static/src/css/**/*,
     'soloRV_custom_works/static/src/js/**/*', 
 ],
},


Regards

الصورة الرمزية
إهمال
المنشورات ذات الصلة الردود أدوات العرض النشاط
2
مايو 24
1706
2
أبريل 24
5094
1
أبريل 24
2049
0
يناير 24
1645
1
ديسمبر 23
2020