搜尋
首頁web前端uni-appuniapp設定meta不生效怎麼解決

Uniapp 是一種基於 Vue.js 的跨平台應用程式開發框架,其開發簡單、易上手,可快速建立 iOS、Android 和 H5 頁面,成為現在行動應用程式開發的重要工具之一。然而,跨平台應用程式的開發也帶來了一些問題,例如本文即是解決 uniapp 頁面配置 meta 不生效的問題,希望對讀者有所幫助。

問題描述

近期有開發者回饋在使用uniapp 建立的H5 頁面中,設定meta 標籤沒有生效,即在瀏​​覽器中查看網站原始碼,找不到對應的meta標籤。但在開發工具的預覽中和手機端查看頁面均能夠正常顯示。

問題解決

  1. 確認meta 內容是否正確

#首先需要確保meta 標籤的內容是否正確,在uniapp 的page.json 中設定:

"meta": {
  "viewport": "width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no",
  "keywords": "uniapp, meta, 问题, 解决",
  "description": "uniapp 配置 meta 不生效的解决方法",
  "apple-mobile-web-app-capable": "yes",
  "apple-mobile-web-app-status-bar-style": "black",
  "format-detection": "telephone=no,email=no,address=no"
}

其中,viewport、keywords、description 是必要的meta 標籤,可加入其他的meta 標籤進行個人化配置。

  1. 在index.html 中加入meta 標籤

如果在page.json 配置meta 後在頁面原始碼中不存在對應的標籤,則需要在uniapp 專案的index.html 中將meta 標籤手動加入進去。例如,在 head 標籤中新增 viewport 的 meta 標籤:

<meta>

如果需要新增其他的 meta 標籤,可參考步驟 1 中的設定。

  1. 確認uniapp 打包配置

如果在前兩個步驟中都未能解決問題,需要確認uniapp 打包的配置,主要包括以下兩個方面:

  • 是否在uniapp 的manifest.json 中配置了打包的路徑

manifest.json 是uniapp 構建的配置文件,需要在其中設置打包的路徑。具體而言,需要在 manifest.json 中的 weex > appboard > src 屬性或 h5 > router > pages 屬性中新增需要打包的頁面路徑。

// weex > appboard > src 示例
"weex": {
  "appName": "UniApp",
  "appBoard": "/index.vue",
  "pages": [
    "pages/tabbar/index/index",
    "pages/tabbar/quick-work/quick-work",
    "pages/tabbar/find/find",
    "pages/tabbar/mine/mine"
  ]
}

// h5 > router > pages 示例
"h5": {
  "custom": {
    "titleNView": true,
    "scrollIndicator": "none"
  },
  "router": {
    "mode": "hash",
    "pages": [
      {
        "path": "/",
        "style": {
          "navigationBarTitleText": "首页"
        },
        "query": "",
        "meta": {
          "viewport": "width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no",
          "keywords": "uniapp, h5, 打包配置, manifest.json",
          "description": "uniapp 配置 meta 不生效的解决方法",
          "apple-mobile-web-app-capable": "yes",
          "apple-mobile-web-app-status-bar-style": "black",
          "format-detection": "telephone=no,email=no,address=no"
        }
      }
    ]
  }
}
  • 是否在uniapp 的vue.config.js 中配置了打包的路徑

除了在manifest.json 中配置打包路徑,也可以在uniapp 專案的根目錄中的vue.config.js 檔案中進行配置,主要是在outputDir 和pages 屬性中進行設定:

module.exports = {
  outputDir: 'dist/h5',
  pages: {
    index: {
      entry: 'src/main.js',
      template: 'public/index.html',
      filename: 'index.html',
      title: 'Index Page',
      chunks: ['chunk-vendors', 'chunk-common', 'index']
    }
  }
}

以上為部分範例程式碼,具體請查閱官方文件或在開發過程中進行調試。

結論

在uniapp 中配置meta 標籤後,如果在頁面原始碼中不存在對應的標籤,則需要手動在index.html 中新增;如果打包後仍未生效,則需要確認manifest.json 和vue.config.js 中的設定是否正確。希望本文解決了您的問題,也希望 uniapp 能越來越完善,成為更穩定、易用的開發工具。

以上是uniapp設定meta不生效怎麼解決的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具