angular.js - Beego 与 AngularJS的模板格式冲突,该怎么解决?
漂亮男人
漂亮男人 2017-05-15 16:49:08
0
5
1028

我在 HTML 里使用了 ·angularjs· 的模板,但是在beego的 Controller 中,我设置

this.TplNames = "index.html"

但是运行之后服务器端报出的信息如下图:

我猜测是因为 beego 用 Go 自己的模板解析了,所以找不到变量。但是我把autorender=false也设置了之后,还是会显示这个错误,而且前端也收不到index.html的内容了。

漂亮男人
漂亮男人

répondre à tous(5)
滿天的星座

https://github.com/astaxie/beego/issues/297 L'auteur a répondu à cette question.

beego.TemplateLeft = "<<<" 
beego.TemplateRight = ">>>"
仅有的幸福

beego ne comprend pas
Mais s'il s'agit d'un conflit de modèle, modifiez simplement la correspondance du modèle Angular
Par exemple :

app.config ($interpolateProvider) ->
  $interpolateProvider.startSymbol '//'
  $interpolateProvider.endSymbol '//'
小葫芦

Si une erreur est signalée côté serveur, il doit s'agir d'une erreur lorsque beego analyse le modèle. Le modèle d'Angular est du HTML pur, car il s'agit d'une bibliothèque frontale, donc si une erreur se produit, elle sera certainement signalée dans la console du navigateur. Là où quelque chose s’est mal passé, vous devez extraire le code et l’analyser pour tout le monde.

習慣沉默

Il existe une fonction Delims dans le package de modèles, qui peut être ce dont vous avez besoin. Elle peut modifier l'identifiant du fichier modèle analysé GO

我想大声告诉你

La syntaxe du modèle de golang est très proche de la syntaxe du modèle d'angularJS, il est donc facile de signaler les erreurs. Voici deux solutions.

  • Remplacez le contenu du modèle angulaireJS dans la page d'accueil par la balise de modèle golang, par exemple, {{ user.name }} est remplacé par {{ _user.name }}, puis utilisez golang pour remplacer {{ _user .name }} Rendu en '{{ user.name }}'. Cette méthode peut résoudre le problème, mais elle est lourde à enseigner.

  • Réduisez le contenu de la page d'accueil et essayez d'inclure le modèle de routage correspondant lors de la conception.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal