You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ionic中AlertCtrl提示框变量显示问题

解决Ionic AlertCtrl中无法显示变量的问题

嘿,这个坑我之前踩过!AlertController的message属性是直接渲染纯HTML/文本的,它不支持解析Angular的模板语法,所以你写的{{dollarPerLitre}}只会被当成普通字符串输出,不会替换成变量值。

正确的做法:用JS变量插值代替Angular模板语法

你已经用到了ES6的模板字符串(反引号`),只需要把{{变量名}}改成${变量名}就能直接嵌入变量值了。另外注意你代码里的小错误:<liDate:应该是<li>Date:,不然HTML会渲染异常。

修正后的完整代码如下:

let confirm = this.alertCtrl.create({
  title: 'Are you sure?',
  message: `
    Are these details correct?
    <ul>
      <li>Price ($/L): ${this.dollarPerLitre}</li>
      <li>KMs Done: ${this.kmsDone}</li>
      <li>Total Spent: ${this.totalSpent}</li>
      <li>Fuel Type: ${this.fuelType}</li>
      <li>Date: ${this.date}</li>
    </ul>
  `,
  buttons: [
    {
      text: 'No',
      handler: () => {
        console.log('Disagree clicked');
      }
    },
    {
      text: 'Yes',
      handler: () => {
        console.log('Agree clicked');
      }
    }
  ]
});
confirm.present();

补充说明

  • 如果你的项目还在使用ES5语法,就用传统的字符串拼接方式:"Price ($/L): " + this.dollarPerLitre
  • 确保在创建Alert的时候,这些变量已经被赋值了,不然会显示undefined

内容的提问来源于stack exchange,提问作者Dasonic

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 06:42:28