vue-cli4系を使用したプロジェクトでplaceholder内にiconを埋め込みたいため、
以下のサイトを参考に実装しました。
<div id="app"> <input type="text" :placeholder="icon" /> </div>
new Vue({ el: '#app', data: { title: 'Vue Rendered Info', icon: '\uf002' } });
しかし、本実装だとproductionモード以外では問題なくアイコンが表示されるのですが、productionモードではアイコンが表示されず、「?」が表示されてしまいます。
ビルドされたあとのapp.jsをみてみると、productionモードとそれ以外の場合で以下のようになっておりました。
■ productionモードでない場合
placeholder: \"\uf002\"
■ productionモードの場合
placeholder: "?"
詳細な原因はわからないのですが、どうやらgulpファイルでutf-8からshift-jisに文字コード変換しているのが悪さしているようです。(gulpの以下のタスクを実行しなければ正常にアイコン表示されました。)
ただし、productionモードとそれ以外の場合両方ともにgulpの以下のタスクが実行されております。
■ gulpファイル
gulp.task('convert', () => { return gulp.src(['./.tmp/**/*.js', './.tmp/*.html']) .pipe(convertEncoding({ to: 'Shift_JIS' })) .pipe(gulp.dest('./dist'))
本件につきまして、原因や回避策わかる方いらっしゃれば、ご教示いただきたいです。
あなたの回答
tips
プレビュー