在一個模組中,前端是extjs,後端是php,報錯,這是在php的錯誤警告開到最嚴格的時候報的錯,雖然程式可以跑,可是日誌堆積越來越多。
<span style="color:rgb(0,0,0); font-family:Consolas, Inconsolata, Courier, monospace;font-size:12px; background-color:rgb(255,255,255);">Undefined variable:loginUserName </span>
<script> Ext.onReady(function () { var app = Ext.create("PSI.App", { // userName: "{$loginUserName}", productionName: "{$productionName}" }); }); </script>
#後端php:
/** * 业务日志 - 主页面 */ public function index() { $us = new UserService(); if ($us->hasPermission(FIdConst::USE_ORDER)) { $this->initVar(); // $this->assign("loginUserName", "tom"); $this->display(); } else { $this->gotoLoginPage("/Home/"); } }
前後端我都把loginUserName註解掉了,為什麼還報錯?
追到thinkphp的頁面快取裡面才發現
js裡面這一行:
// userName: "{$loginUserName}",
對應快取php程式碼裡這一行:
// userName: "<?php echo ( $loginUserName); ?>",
雖然js裡面是註解了,但php程式碼裡面這時候是管不了那麼多的,只要是
而這時在php頁裡面這一行是註解了的:
// $this->assign("loginUserName", "tom");
所以,前端頁面解析的時候找不到$loginUserName,就報錯了。
解決方法:
在js程式碼裡面把這一行刪除就行了:
// userName: "{$loginUserName}",
相關推薦:
在php模版檔案與html檔案中引入js,css檔案錯誤解決
#以上是如何解決js裡面的php程式碼報錯問題的詳細內容。更多資訊請關注PHP中文網其他相關文章!