This relative module was not found: ./index.vue?vue&type=script&lang=ts& in ./pages/index.vue

使用Nuxt脚手架创建typescript项目,npm run dev启动开发服务,报如下错误: This relative module was not found: ./index.vue?vue&type=script&lang=ts& in ./pages/index.vue 解决办法,升级依赖 @nuxt/typescript-runtime ,执行: yarn add @nuxt/typescript-runtime 升级到新版本 ^2.0.0 即可 我这边试了ok。 引用…

Dart Map转成Js object

Flutter2Web, Map 2 js object. 在使用Flutter转web过程中,肯定会遇到需要将Map转成Js对象的需求。 需要用到dart:js 具体实现方式如下: import 'package:js/js_util.dart' as js; Object mapToJSObj(Map<dynamic,dynamic> a){ var object = js.newObject(); a.forEach((k, v) { var key = k; var value = v; js.setProperty(object, key, value); }); return object; }…

使用flutter开发一个Dart packages

在使用Dart包时,使用以下命令: $ flutter create --template=package hello正常创建 由于我的package要用来使用封装js功能,需要引用dart:html 结果报警告: Avoid using web-only libraries outside Flutter web plugin packages.对比了其他源码,最终发现,找到pubspec.yaml,注释掉dependencies中flutter的依赖就可以了。如下图。…

通过Tree shaking和deferred loading来优化Flutter Web应用程序的性能

为了获得最佳的用户体验,应用程序的加载速度非常重要。Flutter Web应用程序的初始加载时间可以通过最压缩其JavaScript包的大小缩短。Dart编译器包含诸如Tree shaking和deferred loading(延迟加载)之类的功能,它们都可以压缩JavaScript。本文介绍了它们的工作方式以及如何在应用程序中使用它们。 默认情况下的Tree shaking编译Flutter Web应用程序时,JavaScript由dart2js编译器生成。发布版本具有最高级别的优化,其中包括通过tree shaking删除无用代码。 Thee shaking是消除无效代码的过程,只包含会被执行的代码。这意味着您无需担心应用程序包含的库的大小,因为未使用的类或函数将从已编译的JavaScript包中排除。 我们来看一个tree shaking示例: 创建一个dart文件greeter.dart: abstract class Greeter { String greet(String name); } class EnglishGreeter implements Greeter { String greet(String name) => 'Hello $name!'; } class SwedishGreeter implements Greeter…

JS字符串相似性、抄袭 判断

如题所示,为了判断内容相似性,快速过滤重复内容。经过一番学习查找之后,有如下结果: 使用 string-similarity 快速解决问题: npm install string-similarity --save stringSimilarity.compareTwoStrings('healed', 'sealed'); // → 0.8 stringSimilarity.compareTwoStrings('Olive-green table for sale, in extremely good condition.', 'For sale: table in very good condition, olive green in colour.'); // → 0.6060606060606061 stringSimilarity.compareTwoStrings('Olive-green table for sale, in…

React ReactNative通用异步引入组件解决方案

实际开发中,难免会遇到一个页面会依赖很多组件的,但都是通过接口下发的条件进行动态引入的。 React已经为我们提供了一种异步引入组件的通用方法,上代码: import React, { Suspense } from "react"; const LazyLargeComponent = React.lazy(() => { return new Promise(resolve => setTimeout(resolve, 5 * 1000)).then( () => import("../components/LargeComponent") ); }); export default function LargeComponent() { return ( <div> <Suspense fallback={<div>loading...</div}> <LazyLargeComponent />…

Ambiguous organization in existing files--flutter create .

近期有机会研究flutter转web,非常棒,感谢公司和领导提供的平台和机会~ 为了让现有项目支持web时,通过官网文档说明,需要执行以下命令: flutter create .然而报错了: Ambiguous organization in existing files: {com.testflutter, com.example}. The --org command line argument must be specified to recreate project.幸好谷歌提供了强大的搜索引擎,我一顿搜索猛如虎,果然还是有各种大拿提前探路,搭好桥梁,让我跨域河沟呀。不禁感叹技术的进步就在这些细节的分享和探讨之中,大家一起来分享吧~ 如果有意愿在当前博客上注册账号,可以给我发邮件哟,我的邮箱地址   378253487@qq.com ,邮件需要包含以下内容,很简单: 注册博客账号申请: 我需要用来注册的邮箱账号:(例如:xxxx@qq.com)…