0 アイコンと画像の違いアイコンは文字であり、画像はバイナリ ストリームです。つまり、画像はアイコンよりも読み込みが遅いため、アイコンを読み込むために img タグを使用しないことが最善です。import メソッドを使用してアイコンをコンポーネントとしてインポートし、タグとしてインポートすることができます。 1 svgをインストールする1. 管理者として cmd ウィンドウを実行し、実行するプロジェクト ディレクトリに切り替えます。 npm に svg を追加 2 アイコンライブラリからアイコンをダウンロードする1. Alibabaアイコンライブラリ
2. svgをダウンロードする 3. compone ディレクトリの下に icons ディレクトリを作成し、特にアイコンを保存するために icons の下に svg ディレクトリを作成します。 3 プラグインの使い方を確認する
4 表示アイコン1 動的コンポーネントMyIcon.vueを定義する 1. Myiconは親コンポーネントから渡されるプロパティです 2.computed は、myicon.name (アイコンの名前) に基づいてアイコン アドレスを動的に生成するために使用されます。その理由は、export default{} の外部でコンポーネントをインポートする場合、受け取った props 属性を export default{} の外部に渡すことができないため、computed を使用してアイコン コンポーネントを生成するためです。 3.:style は、幅と高さがバインドされる動的にバインドされたスタイルです。そして、props にデフォルト値を設定します。親コンポーネントが幅と高さの情報を渡さない場合は、デフォルト値が使用されます。 4.:fill は fill 属性スタイルにバインドされ、デフォルト値も props に設定されます。 <テンプレート> <div> <コンポーネント :is="アイコン" :style="{幅: myicon.width、高さ: myicon.hight}" :fill="myicon.fill" </コンポーネント> </div> </テンプレート> <スクリプト> エクスポートデフォルト{ 小道具:{ マイアイコン:{ 名前:{ タイプ:文字列 }, 幅:{ タイプ:文字列、 デフォルト: '40px' }, 高さ:{ タイプ:文字列、 デフォルト: '40px' }, 埋める:{ タイプ:文字列、 デフォルト:'#000000' } } }, 計算:{ アイコン(){ return () => import('@/components/icons/svg/' + this.myicon.name + '.svg?inline') } } } </スクリプト> <スタイル> </スタイル> 2 main.jsでコンポーネントMyIcon.vueをグローバルにインポートして定義します。 '@/components/MyIcon.vue' から mysvg をインポートします。 Vue.component('my-icon',mysvg) 3 親コンポーネントとしてmy-iconを呼び出す 1. myicon:{} に渡されるプロパティを定義します。name は必須フィールドで、サフィックスなしのアイコンの名前です。 <テンプレート> <私のアイコン :name = "スコープ行アイコン" :幅 = "50px" :height = "50px" :fill = "#ff00ff"> </my-icon> </テンプレート> <スクリプト> エクスポートデフォルト{ データ() { 戻る { マイアイコン:{ 名前: "位置", 幅: "60px", 高さ: "60px", 塗りつぶし: "#ff00ff" }, } }, } </スクリプト> <style スコープ lang="less"> </スタイル> 要約するこれで、vue ダイナミック バインディング アイコンに関するこの記事は終了です。vue ダイナミック バインディング アイコンに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: JDBC を使用して Mysql データベースに接続する際に発生する可能性のある問題の概要
>>: Linux サーバーに Java Web プロジェクトをデプロイするための完全なチュートリアル
docker-compose.ymlを作成し、次の内容を入力します。 バージョン: '3...
1. Howdyをインストール: howdyプロジェクトアドレス sudo add-apt-repo...
タブ切り替えもプロジェクトではよく使われる技術です。一般的にタブ切り替えはjsやjqを使って実装され...
このブログは、MySQL8.0.15 を正常にインストールしたことを思い出すために書きました。以前は...
目次1. テーブルを作成する1.1 テストテーブルt_userを作成する1.2 一時テーブルの作成2...
私たちのコンピューターには、ディレクトリ、写真、ソース コードなどのファイルが保存されています。たく...
アクセス回数が増えると、時間のかかるデータベース読み取り操作では、データベースへの負荷を軽減するため...
前提条件クラウドサーバー(Alibaba Cloud、Tencent CloudなどのcentOS)...
MySQL ストアド プロシージャ、カーソル、トランザクションの例の詳細な説明以下は私が作成した M...
Linux に zip 解凍機能をインストールする通常、 zip コマンドは Linux サーバーに...
この記事では、例を使用して、MySQL データベースの基本的な知識と操作について説明します。ご参考ま...
目次ステップ1: プロジェクトをインストールするディレクトリにnode_modulesをインストール...
プロセス1: 戻り値あり: proc_addNum が存在する場合はプロシージャを削除します。 プロ...
React は、ユーザー インターフェイスを構築するための JavaScript ライブラリです。F...
前回の記事「Zen Coding: HTML/CSS コードを素早く記述する方法」を公開した後、一部...