[英]unable to print the username onto console in JavaScript
我有一個帶有鏈接 js 的 html 文件
<script type="text/javascript" src="{% static 'js/cart.js' %}">
var user= '{{request.user}}'
</script>
在 cart.js 中,我試圖打印用戶變量,但我不斷收到一條錯誤消息,提示未定義未捕獲的 ReferenceError 用戶。 關於如何解決這個問題的任何想法? 這是 cart.js
var updateBtns=document.getElementsByClassName("update-cart")
for(var i=0;i<updateBtns.length;i++){
updateBtns[i].addEventListener('click',function(){
var pid=this.dataset.item
var action=this.dataset.action
console.log('pid:',pid,'action:',action)
})
console.log('USER',user)
if(user=='AnonymousUser'){
console.log('Not logged in')
}else{
console.log('User is logged in')
}
}
根據w3 組織,如果一個<script>
標簽有一個src="…"
屬性,腳本的內容將被忽略,所以它永遠不會評估var user= …
。 您應該使用兩個標簽:
<script src="{% static 'js/cart.js' %}"/> <script> var user = '{{request.user}}'; </script>
如果js/cart.js
需要 user user
變量,你需要先定義它,所以:
<script> var user = '{{request.user}}'; </script> <script src="{% static 'js/cart.js' %}"/>
我建議在您的瀏覽器調試器中的行中添加一個斷點
var user=...
並重新加載頁面。 因此,您可以查看該行是否在 card.js 腳本之前執行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.