php - Smarty PHP 与 AngularJS 冲突

标签 php javascript smarty angularjs template-engine

当我在同一模板中使用 AngularJS 时,如何阻止 Smarty 抛出错误。我有一个带有此代码的 Smarty 页面模板:

 <li ng-repeat="i in items">
      <p class="item">{{i}}</p>
 </li>

当我在浏览器中查看时,我得到一个空白页面。我在我的 apache error_log 中收到一个大错误,其中包含以下内容:

 PHP Fatal error: Uncaught exception 'SmartyCompilerException' with message 'Syntax Error in template ... <p>{{i}}</p>; unknown tag "i

如果我将 {{i}} 换成 {{4}} 或任何其他数字,它就可以正常工作。我也可以使用数学,{{8+2}} 将在页面中显示 10。是 Smarty 做 angularJS 的数学运算吗?

最佳答案

更简洁的解决方案:您可以这样更改 AngularJS 的模板分隔符:

angular.module('app', [])
  .config(['$interpolateProvider', function ($interpolateProvider) {
    $interpolateProvider.startSymbol('[[');
    $interpolateProvider.endSymbol(']]');
  }]);

关于php - Smarty PHP 与 AngularJS 冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12738012/

相关文章:

php - 使用日期之间的MySQL问题

php - Silverstripe 连续/动态形式

php - 使用证书解码 http 响应

javascript - Node.JS/Grunt-Nodemon : ReferenceError: mode is not defined

php - 使用 smarty 对数组进行排序

php - 标题对齐问题

javascript - 如何使用 ejs post 表单更新 node.js 和 MongoDB 应用程序中的现有用户数据?

javascript - 如何使用 Javascript 有效地确定 HTML 文档中同级元素的相对顺序

html - 使用 SMARTY 截断 HTML 格式的文本

php - 打印模板中的记录