Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: 默认值支持 #4

Closed
object-kaz opened this issue Jun 30, 2022 · 5 comments
Closed

feat: 默认值支持 #4

object-kaz opened this issue Jun 30, 2022 · 5 comments
Labels
good first issue Good for newcomers

Comments

@object-kaz
Copy link
Contributor

script setup 中的 name 属性支持根据 插件选项,设置默认值。

增加的一些插件选项:

  • 'defaultName: "none" | "fileName" | "relativeName" | (id: string) => ({name: string} | { policy: string })'
    • none: 如果用户未填写,则不自动设置名称
    • fileName: 如果用户未设置name属性,则使用文件名(去掉后缀并转驼峰)作为组件名。如 NavBar.vue => NavBar
    • relativeName: 如果用户未设置name属性,则使用相对路径(去掉后缀和'/',并转驼峰)作为组件名。如 user/Login.vue => UserLogin
    • 自定义函数: 可以让用户根据id设置合适的策略,或者直接根据id设置组件名称

由于用户可能会script标签定义组件的name属性,这跟本插件设置的默认name起冲突。因此需要在script setup 增加一个开关属性 'no-default-name',如果用户手动设置了这个属性,则插件不作 defaultName 的处理。

@chenxch chenxch added the good first issue Good for newcomers label Jun 30, 2022
@chenxch
Copy link
Owner

chenxch commented Jul 2, 2022

0.3.0版本已经发布, 参数名称进行了调整,详见

@chenxch
Copy link
Owner

chenxch commented Jul 2, 2022

在处理fileName的时候从测试中来看和默认行为一样,目前代码中还是包含了这部分的处理。

@object-kaz
Copy link
Contributor Author

在处理fileName的时候从测试中来看和默认行为一样,目前代码中还是包含了这部分的处理。

vue的插件在编译的时候给组件加上了 __name 属性,和插件里面的 fileName 在行为上确实差不多,要不试着把 fileName 取消吧

@chenxch
Copy link
Owner

chenxch commented Jul 5, 2022

vue的插件在编译的时候给组件加上了 __name 属性,和插件里面的 fileName 在行为上确实差不多,要不试着把 fileName 取消吧

@chenxch
Copy link
Owner

chenxch commented Jul 5, 2022

0.3.2版本已经发布

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for newcomers
Projects
None yet
Development

No branches or pull requests

2 participants