首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >App Browser IONIC 3中的模板解析错误

App Browser IONIC 3中的模板解析错误
EN

Stack Overflow用户
提问于 2018-05-30 03:18:34
回答 1查看 153关注 0票数 0

我一直在一个需要在应用程序内部打开网站的项目上工作。所以,我在ionic 3上使用了Cordova InAppBrowse。问题是,我在显示解析错误时出现了错误。

在index.html上

代码语言:javascript
复制
<div style="text-align: center;">

  <button ion-button type="button" (click)="open('https://coins4ar.com/{{coinsGroup.symbol}}/')">More Info
</button>
  </div>

在index.ts上

代码语言:javascript
复制
import { InAppBrowser } from '@ionic-native/in-app-browser';

@Component({
  selector: 'page-index',
  templateUrl: 'index.html'
})
export class IndexPage {
  constructor(public navCtrl: NavController, public navParams: NavParams, private iab: InAppBrowser,
    private data: DataProvider, public http: HttpClient) {
  }

coinsGroup = [];


ionViewDidLoad() {

    this.coinsGroup = this.navParams.data;  

  }
open(url:string) {  
    let browser = this.iab.create(url,'_blank', 'location=yes');
    browser.show();
  }

}

我得到了错误

代码语言:javascript
复制
VM66652 vendor.js:100970 Uncaught Error: Template parse errors:
Parser Error: Got interpolation ({{}}) where expression was expected at column 27 in [open('https://coins4ar.com/{{coinsGroup.symbol}}/')] in ng:///AppModule/IndexPage.html@190:39 ("
    -->

      <button ion-button type="button" [ERROR ->](click)="open('https://coins4ar.com/{{coinsGroup.symbol}}/')">More Info</button>
  </div>

"): ng:///AppModule/IndexPage.html@190:39
    at syntaxError (VM64228 vendor.js:100970)
    at TemplateParser.parse (VM64228 vendor.js:125153)
    at JitCompiler._parseTemplate (VM64228 vendor.js:135106)
    at JitCompiler._compileTemplate (VM64228 vendor.js:135081)
    at VM64228 vendor.js:134982
    at Set.forEach (<anonymous>)
    at JitCompiler._compileComponents (VM64228 vendor.js:134982)
    at VM64228 vendor.js:134852
    at Object.then (VM64228 vendor.js:100959)
    at JitCompiler._compileModuleAndComponents (VM64228 vendor.js:134851)

当使用Anchor标签时,它工作得很好,但它将在应用程序外部启动网站。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-30 04:47:33

我相信你的问题就在这一行

代码语言:javascript
复制
(click)="open('https://coins4ar.com/{{coinsGroup.symbol}}/')"

并且您需要将其更改为

代码语言:javascript
复制
(click)="open('https://coins4ar.com/'+coinsGroup.symbol+/')" 

您可以在这里找到可用的样例解决方案https://stackblitz.com/edit/angular-qp3xhw

更新

或者,如果您有权访问ts文件中的coinsGroup,请执行以下操作

代码语言:javascript
复制
(click)="openLink()"

在你的ts文件中

代码语言:javascript
复制
openLink() {
  const url = `https://coins4ar.com/${this.coinsGroup.symbol}/`;
  ... open page from here
} 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50591463

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档