切换到 Typescript 后找不到 App.js

Posted

技术标签:

【中文标题】切换到 Typescript 后找不到 App.js【英文标题】:App.js not found after switching to Typescript 【发布时间】:2021-06-18 14:12:51 【问题描述】:

我有一个问题,我有点绝望,因为我还没有找到解决方案(也因为我不知道用谷歌搜索什么)。 所以我有一个现有的(仍然几乎是新的)Laravel 项目,并想使用 typescript 从 vue2 升级到 vue3。因此,使用this 教程,我从 vue2 切换到 vue3,使用 this 教程,我切换到了打字稿。为项目提供服务(php artisan serve)时,http://127.0.0.1:8000/js/app.ts 出现“404 Not Found”错误。还有两个警告,源“http://127.0.0.1:8000/js/app.ts”和“http://localhost:35729/livereload.js”无法加载

这是我更改的一些文件

// webpack.mix.js
const LiveReloadPlugin = require('webpack-livereload-plugin');

mix.ts('resources/js/app.ts', 'public/js')
    .vue();

mix.webpackConfig(
    plugins: [new LiveReloadPlugin()]
)
// tsconfig.json

    "compilerOptions": 
        "target": "es5",
        "strict": true,
        "module": "es2015",
        "moduleResolution": "node",
    ,
    "include": [
        "resources/js/**/*"
    ]

// resources/js/app.ts
import  createApp  from 'vue';
import App from './components/App.vue'

createApp(App)
    .mount('#app');
// resources/shims-vue.d.ts
declare module "*.vue" 
    import  ComponentOptions  from "vue";
    const component: ComponentOptions;
    export default component;

有谁知道如何解决这个问题?我非常感谢任何形式的建议。

【问题讨论】:

【参考方案1】:

当我将 app.js 重命名为 app.ts 时,所有出现的地方也都重命名了。所以在我的start.blade.php中有一个脚本引用了app.ts,编译后显然不存在... 我不得不将其更改为 app.js,现在它可以工作了。

【讨论】:

以上是关于切换到 Typescript 后找不到 App.js的主要内容,如果未能解决你的问题,请参考以下文章

virtuoso降版本后找不到library

升级到 '@nativescript/core' 后找不到 Xxport 'topmost'

警告:更新到 xcode 7 后找不到选项的目录

更新到 nextjs@10.4 后找不到模块'webpack/lib/node/NodeTemplatePlugin'

升级到节点 7 后找不到模块“内部/fs”

升级到 Angular4 后找不到名称“require”