모듈에서 프론트엔드가 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 코드 현재 내부에서 수행할 수 있는 작업은 많지 않습니다. bb9bd6d87db7f8730c53cb084e6b4d2d 내부 내용을 구문 분석해야 합니다.
이 때 PHP 페이지의 다음 줄은 주석 처리됩니다.
// $this->assign("loginUserName", "tom");
그래서 프런트 엔드 페이지 구문 분석 $loginUserName을 찾을 수 없으면 오류가 보고됩니다.
해결책:
js 코드에서 다음 줄을 삭제하세요.
// userName: "{$loginUserName}",
관련 권장 사항:
in php 템플릿 파일 및 html 파일 js 가져오기, CSS 파일 오류 해결 방법
위 내용은 js에서 PHP 코드의 오류 문제를 해결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!