タグ

ブックマーク / zenn.dev/comm_vue_nuxt (12)

  • Reactive Props Destructure を支える技術

    みなさんこんにちは, ubugeeei です. 最近技術発信が全くできていないな〜お前それでも Vue Team Member かよ,と思いつつ,せっかく Vue 3.5 がリリースされたのでそれに関連した機能の記事でも書こうかと思います. Vue 3.5.0 がリリースされました 先日,Vue 3.5.0 (Tengen Toppa Gurren Lagann) がリリースされました. このリリースでは,Reactivity System の最適化や,新しいコンポーザブルである useTemplateRef,useId,Custom Elements の改善など様々な変更が入りました. 詳しくは上記の公式ブログや,同 publication のまとめ記事 などを参照してください. 今回のトピック Vue 3.5 で Reactive Props Destructure という機能が安定版

    Reactive Props Destructure を支える技術
  • Nuxt Auth Utils でサーバーサイドの認証を(OAuth・マジックリンク・ワンタイムパスワード)

    Nuxt 3 では Universal Rendering (SSR) によるアプリケーションの開発が難なく可能です。 Nitro というサーバーサイドのフレームワークにより、Nuxt 3 はサーバー側の処理も簡潔に記述できるようになっています。 Nuxt Auth Utils はそんな Nuxt の特徴を生かした、SSR のアプリケーションに OAuth 認証を実装できる Nuxt モジュールです。 執筆時点で GitHub, Google, Discord など 17 の OAuth プロバイダーに対応していますので、通常用途では充分だと思います。 さて当記事では、そんな Nuxt Auth Utils を使った実装と、後半では OAuth 以外の認証方法であるマジックリンク認証とワンタイムパスワード認証を追加実装する方法を解説します。 完成形のイメージ 完成したログインフォームはこの

    Nuxt Auth Utils でサーバーサイドの認証を(OAuth・マジックリンク・ワンタイムパスワード)
  • ついにβ版となったVue 3.5の魅力的な新機能をまとめてみた

    Vue 3.5 β版のリリースが始まっています!記事では3.5で追加された新機能などを一足早く動作させてみましたので、個人的に楽しみにしている機能をまとめてみました。 composable useTemplateRef テンプレート参照をcomposableとして便利に利用できる関数です。 Vue 3.5より前は以下の様に変数を定義してテンプレート参照を行っていたため、下記のonMountedの処理をcomposableとしてまとめようとしてもテンプレート参照の変数(下記で言えばtemplateRef)自体を渡さなければならず、少し扱いづらいところがありました。 <script setup> import { ref, onMounted } from 'vue' const templateRef = ref() onMounted(() => { templateRef.value.

    ついにβ版となったVue 3.5の魅力的な新機能をまとめてみた
  • Co-Edo終了報告サイトをCloudflareで開発するとき使った NuxtHub がとっても便利!

    こんにちは。田中弘治です。 僕は2013年よりコワーキングスペース茅場町 Co-Edoというのを運営してきているのですが、実はまことに残念なことに、ビル建て替えに伴い年中に終了することとなりました。 これまでご活用いただいたみなさま、当にありがとうございます。 その報告をする専用サイトを作ろうと思い、どうせならCo-Edoへのメッセージを送れるようなものをと考えてたところで Cloudflare を活用しようと思いました。 D1 や KV といったエッジで動く技術は今後広まっていくと思うので、今後 Cloudflare 中心の開発をしていくための準備でもあります。 作ったもの 1週間も2週間もかけてつくるものではないので、あっさりしたものを作りました。 作っていくうちに、いろいろやりたくなり、結果的につぎのような機能を持つサイトになりました。 メッセージを送る機能 今後の最新情報を受け

    Co-Edo終了報告サイトをCloudflareで開発するとき使った NuxtHub がとっても便利!
  • UnoCSS を知る、まずは経緯から

    👋 はじめに ナイトウ(@engineer_naito)と申します。 今回は CSS フレームワーク Atomic CSS エンジンである UnoCSS について紹介したいと思います。 🧐 想定読者 Tailwind CSS などの CSS フレームワークを利用したことのある開発者であればスラスラ読めると思いますが、初学者の方であっても問題なく読めると思います。 (なぜならばぼく自身が CSS フレームワークを使ったモダンフロントエンド開発の経験がないからです 🙋‍♂️) 🗾 UnoCSS と日 UnoCSS は軽量かつ柔軟な Atomic CSS エンジンであり、現在最も注目を集めている CSS ツールの一つです。 人気調査サイトの結果によると、ここ 2, 3 年で確かに人気や知名度が上昇しています。 しかし、日ではどうでしょうか? Zenn で「UnoCSS」と検索してみま

    UnoCSS を知る、まずは経緯から
  • Vue.js でファイルベースルーティングを実現する「Unplugin Vue Router」の紹介

    Web アプリケーション開発において、ファイルベースルーティングはコードの可読性向上や開発効率化に大きく貢献します。記事では、Vue.js アプリケーションでのファイルベースルーティングをシンプルかつ型安全に実現できる「Unplugin Vue Router」をご紹介します。Nuxt のような大規模なフレームワークは少し大げさだと感じる場合や、Vue Router をより効率的に活用したい方はぜひ参考にしてください。 Unplugin Vue Router 概要 ファイルベースルーティングによってファイルのパスと URL を直接対応させることで、コードの構造を直感的に理解できます。 TypeScript との連携によりコンパイル時にルーティングのミスを検出でき、より安全な開発が可能になります。 Nuxt のようなフルスタックフレームワークと比較して軽量であり、小規模なプロジェクトに最適で

    Vue.js でファイルベースルーティングを実現する「Unplugin Vue Router」の紹介
  • Nuxt Scripts でサードパーティスクリプトをより身近に

    はじめに こんにちは、がんがんです。 2024 年 6 月に Nuxt v3.12 がリリースされました。 Nuxt v3.12 の目玉としては Nuxt4 のリリース準備が進んでいること、現環境で Nuxt4 のマイグレーション実験を行えること が挙がられると思います。 Nuxt4 へのマイグレーション実験はこちらの記事で実験されています。合わせてご覧ください。 そんな v3.12 のリリースノートの中に今まで見たことなかったモジュール名が記載されていました (以下ブログ記事の引用) 📜 Nuxt Scripts auto-install We've been gradually working to release Nuxt Scripts. It's currently in public preview, but we're near a public release, so w

    Nuxt Scripts でサードパーティスクリプトをより身近に
  • vuejs/core のソースコードを探検する楽しさ

    はじめに フロントエンドエンジニアのhiroです。 エンジニアになって半年が過ぎました。 表題にあるとおり、この記事では vuejs/core のソースコードを探検してみたいと思います。 ソースコードの探検が目的のため、実装の詳しい解説自体は行いません。あらかじめご了承ください。 目的 記事はubugeeeiさんの素晴らしいであるchibivueに出会い、ubugeeeiさんご人にVueについて直接教えて頂き、Vueのソースコードに興味を持ったことがきっかけで執筆しています。chibivueVueの基的な機能を自分で実装することで、Vueについての理解を深め、vuejs/coreのソースコードが読めるようになることを目的とされているです。 エンジニア経験の浅い私にとってVueのソースコードを理解することは難しいですが、全部が理解できなくてもなんとなく 「こういう実装になっている

    vuejs/core のソースコードを探検する楽しさ
  • Nuxt3のLinterは Nuxt ESLint で整備する (マイグレーションあり)

    はじめに こんにちは、がんがんです。 2024 年 4 月、Nuxt から Nuxt ESLint というモジュールが公開されました。Nuxt ユーザー待望の All-in-one ESLint モジュールです。 モジュールの登場により Nuxt におけるリンターの設定方法が大きく変わりました。 記事では Nuxt ESLint を用いたマイグレーションを中心に新しい Nuxt ESLint をセットアップしていきます。 Nuxt ESLint とは Nuxt ESLint はAll-in-one ESLint integration for Nuxtと公式ドキュメントに記載がある通り、Nuxt ユーザーのための All-in-one モジュールです。 今までの Nuxt ユーザーは Nuxt3 で ESLint を使う場合、どれが Nuxt 公式のルールだろう Nuxt で ESLi

    Nuxt3のLinterは Nuxt ESLint で整備する (マイグレーションあり)
  • ViteでVueコンポーネントテスト用のカスタム属性を削除する

    はじめに お久しぶりです、からころです。 突然ですが、みなさん Vite は利用してますか? Vitest や Jest をはじめ、Vueでコンポーネントのテストをする際に、 しばしばテスト用にカスタム属性を用意することがあります。 テスト属性がバンドルされてプロダクション環境に出てくると、 意図しない挙動を引き起こしたりするかもしれないから避けたい! そもそもテストタグを追加するだけなのにビルド後のコードに変更が加わるのは気持ち悪い! といった方に向けた記事になります。 設定について nuxt.config.tsの場合 { ... // 下記を追加する vue: { compilerOptions: { nodeTransforms: [ (node) => { if (node.type === 1 /* NodeTypes.ELEMENT */) { for (let i = 0;

    ViteでVueコンポーネントテスト用のカスタム属性を削除する
  • Vue / Vite 関連ライブラリー名の読み方 2024

    Vue/Vite 関連のライブラリー名の読み方は間違えられやすいものが多く、混乱を招くことがあります。この記事では、2024 年現在における Vue/Vite 関連ライブラリーの正式な読み方や由来をまとめ、正しい知識を共有することを目的としています。 Vue フロントエンド UI フレームワークのひとつ。 「ヴュー」と読む(口語だと「ビュー」と発音することが多い)。 Vue(発音は /vjuː/、view と同様) https://ja.vuejs.org/guide/introduction.html#what-is-vue Pinia Vue 公式の状態管理ライブラリー。 「ピーニャ」と読む。スペイン語で「パイナップル」を表す単語 piña に由来。 「ピニア」ではない。 Pinia (pronounced /piːnjʌ/, like "peenya" in English) htt

    Vue / Vite 関連ライブラリー名の読み方 2024
  • 【Vue.js】コンパイラってよく聞くけど一体全体なんなんだ!?!?!?

    🚩 初めに こんにちは。Vue Beginners です! 😄 これまでに、Vue の勉強を始める方法や、環境構築の方法などを紹介してきました。 今回はもう少し範囲を絞って、具体的な疑問について解説していきます!!!!! Vue.js について学んでいると、コンパイラ という言葉を見かけることがあると思います。 皆さんは「Vue.js のコンパイラとは何ですか?」と聞かれたら、どのように答えますか? 🤔 意外と戸惑う方も多いのではないでしょうか。 今回はコンパイラとは何なのか、何のためにあるのか、Vue.js のコンパイラとはどういうものなのかについて説明してみます。 それではスタート!!!!!!!!!!! 🤔 コンパイラとは これからの説明は、Vue.js に限った話ではありません。 プログラミング全般で使われる コンパイラ という意味について説明していきます。 コンパイラ (C

    【Vue.js】コンパイラってよく聞くけど一体全体なんなんだ!?!?!?
  • 1