V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
mamahaha
V2EX  ›  Vue.js

js 或者 ts 项目当中是如何自定义文件扩展名的?

  •  
  •   mamahaha · 2020-12-03 15:05:04 +08:00 · 2359 次点击
    这是一个创建于 1452 天前的主题,其中的信息可能已经有所发展或是发生改变。

    比如像 vue 的*.vue 文件,quill 的*.styl 文件。

    9 条回复    2020-12-03 19:54:25 +08:00
    VDimos
        1
    VDimos  
       2020-12-03 15:10:44 +08:00 via Android
    啥意思?自己定义一个 external.d.ts ,把这些文件后缀加进去就行了
    abelmakihara
        2
    abelmakihara  
       2020-12-03 15:13:19 +08:00
    类似于这样?
    declare module '*.vue' {
    import Vue from 'vue';
    export default Vue;
    }
    mamahaha
        3
    mamahaha  
    OP
       2020-12-03 15:40:31 +08:00
    没这么简单吧,搜了一下 自创 js 可以读取的文件类型 ,搜不到啊,不知道自创文件类型有啥好处。
    woodensail
        4
    woodensail  
       2020-12-03 15:45:26 +08:00   ❤️ 1
    最入门的一环,写个 webpack 插件,拦截你的特定后缀名并进行编译。然后就能跑了。
    在之后就是写 ide 插件、lint 插件、各种插件,以支持代码提示,检查,高亮等功能。
    joesonw
        5
    joesonw  
       2020-12-03 17:08:58 +08:00
    2 楼是正解, 注意要放.d.ts 文件里
    mamahaha
        6
    mamahaha  
    OP
       2020-12-03 17:23:48 +08:00
    @joesonw
    @abelmakihara
    这个我搜到了 https://segmentfault.com/q/1010000021967636?utm_source=tag-newest
    貌似是让 ts 支持 vue 格式,不是定义 vue 格式,vue2.x 就没有 ts 但是会有*.vue ,不知道在哪声明的*.vue 的文件类型。
    Kasumi20
        7
    Kasumi20  
       2020-12-03 17:39:01 +08:00
    webpack loader 了解一下?
    joesonw
        8
    joesonw  
       2020-12-03 19:04:59 +08:00   ❤️ 1
    @mamahaha ts 里面声明只是让 import 正确而已. 可以和 js 一样 require. 具体解析还是要看打包器处理, 例如 webpack
    mamahaha
        9
    mamahaha  
    OP
       2020-12-03 19:54:25 +08:00
    @joesonw 原来是这样
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1394 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 17:10 · PVG 01:10 · LAX 09:10 · JFK 12:10
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.