VS Code 代码片段用于 Livewire 和 Alpine.js

最后更新日期 作者

VS Code Snippets for Livewire and Alpine.js image

VS Code 与许多代码编辑器一样,包含一项称为“代码片段”的功能。此功能允许您为经常使用的代码部分配置快捷方式。例如,您可以设置一个代码片段,以便您可以输入 fun 等一些字符,按下 tab,它将扩展到整个函数声明中。

我最近一直在优化我的 VS Code 设置,所以我再次浏览了 Caleb Porzio 的 Make VS Code Awesome 课程。它提醒了我这些代码片段是多么有用和强大,所以我开始考虑可以添加哪些新的代码片段来使我的生活更轻松。今天,我将与您分享其中的一些,您可能会从中获取一些对您的工作流程有用的代码片段。具体来说,我将分享我在开发 Livewire 和 Alpine.js 应用程序时使用的代码片段。

如何在 VS Code 中配置代码片段

首先,如何在 VS Code 中配置代码片段?如果您已经知道,可以跳过此部分,直接进入精华部分。

首先,通过按 Mac 上的cmd+shift+p或 Windows 上的ctrl+shift+p打开命令面板。开始输入“代码片段”,该面板应筛选到名为“代码片段:配置用户代码片段”的选项。选择该选项,然后将提示您选择要为其配置代码片段的语言。

以我之前提到的基本示例为例,如果您选择“javascript.json (JavaScript)”并在其中粘贴以下代码片段,您应该已经成功配置了一个“function”代码片段,当您在 JS 文件中进行编写时可以使用该片段。

{
"Function": {
"prefix": "fun",
"body": [
"function $1($2) {",
" $3",
"}"
]
},
}

代码片段的配置相对简单。每个代码片段都是一个 JSON 对象。对象的键是代码片段名称。其中的prefix是您用于将代码片段插入到代码中的快捷方式。body是一个数组,其中包含作为代码片段的一部分插入的行。您还可以在代码片段中使用$1$2$3等包括占位符。插入代码片段后,您可以继续按tab键,这让您的光标移动到每个占位符。在此示例中,占位符便于您轻松添加函数名称、参数,然后是主体。

PHP/Livewire

既然您知道如何配置代码片段,让我们来看看我最喜欢的用于 PHP 和 Livewire 类的一些代码片段。可以在命令面板中选择“php.json (PHP)”来配置这些代码片段。

类属性和方法涵盖了基础知识,但最近添加的代码片段用于 Livewire 的mount方法、#[Computed]属性(包括 PHP 属性)和 #[Url] 属性。

{
"Public Property": {
"prefix": "pub",
"body": [
"public ${0};"
],
"description": "PHP Public Property"
},
"Computed Property": {
"prefix": "comp",
"body": [
"#[Computed]",
"public function $1()",
"{",
" $2",
"}"
]
},
"Livewire Url Property": {
"prefix": "url",
"body": [
"#[Url$3]",
"public $1 = $2;",
]
},
"Livewire Mount Method": {
"prefix": "mount",
"body": [
"public function mount()",
"{",
" $1",
"}"
]
},
"Method": {
"prefix": "met",
"body": [
"public function $1($2)",
"{",
" $3",
"}"
]
},
"Private Method": {
"prefix": "pmet",
"body": [
"private function ${1}(${2})",
"{",
" ${0}",
"}"
],
"description": "PHP private function"
},
}

Blade 和 Alpine.js

我最喜欢的用于 Blade 和 Alpine 代码片段的一些代码片段是:

  • 用于console.logcon
  • 用于console.lograw,其中将值包装在Alpine.raw中(我在以下内容中提供了一个秘诀:最近一篇文章
  • 用于 Tailwind CDN 脚本的tailwindcdn,该脚本可用于快速设置 Tailwind 以便进行演示和测试想法

可以在命令面板中选择“blade.json (Blade)”来配置这些代码片段。

{
"Console Log": {
"prefix": "con",
"body": [
"console.log($1)"
]
},
"Console Log (Alpine.raw)": {
"prefix": "raw",
"body": [
"console.log(Alpine.raw($1))"
]
},
"Tailwind Play CDN": {
"prefix": "tailwindcdn",
"body": [
"<script src=\"https://cdn.tailwindcss.com\"></script>"
]
},
}

如果您正在使用 Livewire Volt 的类 API,您可能会发现将您的普通 PHP 代码片段包含在 Blade 配置中也很有用。

希望你能够发现一些有用的摘要,或者至少从中获得一些能为你的工作流带来好处的摘要灵感!再次重申,如果你还没有查看过 Caleb 的 让 VS 代码变棒的 课程,那么我强烈推荐你这样做。该课程包含了我没有介绍的许多其他摘要,以及主题、键盘快捷键、扩展程序等等。

Jason Beggs photo

TALL 堆栈(Tailwind CSS、Alpine.js、Laravel 和 Livewire)顾问,拥有 designtotailwind.com

归档在
Cube

Laravel 时事通讯

加入超过 40k 的其他开发人员,并且不要再错过新的提示、教程等信息。

Laravel Forge logo

Laravel Forge

轻松创建和管理你的服务器,以及在数秒内部署你的 Laravel 应用程序。

Laravel Forge
Tinkerwell logo

Tinkerwell

Laravel 开发人员必备的代码运行器。利用 AI、自动完成以及本地和生产环境中的即时反馈来进行调试。

Tinkerwell
No Compromises logo

No Compromises

No Compromises 播客中的两位经验丰富的开发人员 Joel 和 Aaron 现在可以为你聘用,来做你的 Laravel 项目。⬧ 7500 美元/月固定费。 ⬧ 不会进行冗长的销售流程。 ⬧ 无需签订合同。 ⬧ 100% 退款保证。

No Compromises
Kirschbaum logo

Kirschbaum

提供创新和稳定性以确保你的 Web 应用程序的成功。

Kirschbaum
Shift logo

Shift

正在运行旧版本的 Laravel?立即、自动完成 Laravel 升级和代码改造,以保持你的应用程序的焕新状态。

Shift
Bacancy logo

Bacancy

聘用一位经验丰富的 Laravel 开发人员,拥有 4-6 年经验,每月仅需 2500 美元,为你的项目注入超强动力。获得 160 小时的专业技能和 15 天无风险试用期。立即安排通话!

Bacancy
Lucky Media logo

Lucky Media

现在就选择 Lucky - 十多年经验的 Laravel 开发领域的理想选择!

Lucky Media
Lunar: Laravel E-Commerce logo

Lunar: Laravel 电子商务

Laravel 电子商务。一个开源包,将现代无头电子商务功能的强大功能带到 Laravel。

Lunar: Laravel 电子商务
LaraJobs logo

LaraJobs

Laravel 官方职业网站

LaraJobs
SaaSykit: Laravel SaaS Starter Kit logo

SaaSykit: Laravel SaaS 入门工具包

SaaSykit 是一个 Laravel SaaS 入门工具包,带有运行现代 SaaS 所需的所有功能。付款、美观的结帐页面、管理面板、用户仪表板、身份验证、准备就绪的组件、统计数据、博客、文档等。

SaaSykit: Laravel SaaS 入门工具包
Rector logo

Rector

无缝 Laravel 升级、削减成本以及加速成功的公司的创新的合作伙伴

Rector
MongoDB logo

MongoDB

借助 MongoDB 和 Laravel 的强大集成来增强您的 PHP 应用程序,使开发人员能够轻松高效地构建应用程序。支持事务、搜索、分析和移动用例,同时使用熟悉的 Eloquent API。了解 MongoDB 的灵活、现代数据库如何转变您的 Laravel 应用程序。

MongoDB
Maska is a Simple Zero-dependency Input Mask Library image

Maska 是一款简单零依赖输入掩码库

阅读文章
Add Swagger UI to Your Laravel Application image

将 Swagger UI 添加到您的 Laravel 应用程序

阅读文章
Assert the Exact JSON Structure of a Response in Laravel 11.19 image

断言 Laravel 11.19 中响应的确切 JSON 结构

阅读文章
Build SSH Apps with PHP and Laravel Prompts image

使用 PHP 和 Laravel 提示构建 SSH 应用程序

阅读文章
Building fast, fuzzy site search with Laravel and Typesense image

利用 Laravel 和 Typesense 构建快速、模糊的网站搜索

阅读文章
Add Comments to your Laravel Application with the Commenter Package image

使用 Commenter 包为您的 Laravel 应用程序添加注释

阅读文章