Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/464.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在django项目的.js文件中提到静态文件?_Javascript_Python_Django_Static_Web Frontend - Fatal编程技术网

Javascript 如何在django项目的.js文件中提到静态文件?

Javascript 如何在django项目的.js文件中提到静态文件?,javascript,python,django,static,web-frontend,Javascript,Python,Django,Static,Web Frontend,我在django项目中提到了.js文件中的一个文件,因此我面临一个问题 main.js中的一行是 navigator.serviceWorker.register("{% static '/static/sw.js' %}") 但是在运行项目时,它会说找不到:/sw.js 这是目录结构- 我应该如何在我的main.js文件中提到sw.js文件以避免fileNotFound错误 添加到settings.py- STATICFILES_DIRS = [ os.path.join(BASE

我在django项目中提到了
.js
文件中的一个文件,因此我面临一个问题

main.js中的一行是

navigator.serviceWorker.register("{% static '/static/sw.js' %}")
但是在运行项目时,它会说
找不到:/sw.js

这是目录结构-

我应该如何在我的
main.js
文件中提到
sw.js
文件以避免fileNotFound错误

添加到
settings.py
-

STATICFILES_DIRS = [
    os.path.join(BASE_DIR, "static"),
    '/static/',
]
url.py
包括

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', index),
    path('/push_v1/', push_v1),
    path('/subscription/', subscription),
] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
完全错误-


在Github上查找代码以供参考

在setting.py文件中设置静态文件的位置

STATIC_URL = '/static/'

STATICFILES_DIRS = (
   os.path.join(BASE_DIR, 'static'),
)
然后在模板中首先加载静态文件,然后设置脚本文件n模板本身

{% load static %}

<script type="text/javascript" src="{% static 'sw.js' %}"></script>
{%load static%}

你试过了吗,
{%static'fbpush/static/sw.js%}
我刚试过,没用!另外,我在第一行的
sw.js
main.js
中都包含了
{%load static%}
。我还需要添加其他内容吗?
{%load static%}
应该添加到HTML文件中,而不是js文件try
{%static'sw.js%}
{%static'/sw.js%}
@ArakkalAbu我已经尝试过了,它不起作用!相同的错误:(感谢您的回复!我尝试了这个方法,但似乎不起作用。作为参考,我在github上添加了代码:从STATICDIR_文件中去掉逗号后的额外静态,在模板脚本标记中,您可以直接执行此操作{%static'sw.js'%}在你的srcI中,我做了建议的更改。似乎我仍然缺少一些东西。我已将更改提交到存储库。如果你能看一下,这将是一个很大的帮助(特别是
index.html
标题部分和
main.js
的第128行)加载的是非静态文件还是仅js文件?如果是这种情况,请尝试运行此命令python manage.py collectstatic,因为代码看起来不错。