草庐IT

vue3-Typescript

全部标签

vue.js not detected问题解决

 最近在看vue的时候,发现之前装过的vuedevtools提示vue.jsisnotdetected。重装了一次后,发现对于没有应用vue框架的页面,的确是检测不到vue.js,所以报这个很正常;切换到有vue.js资源的页面,调试界面就会自动检测出vue插件(如果还是报错,具体下文有讲)。如果你跟我一样上不了chrome商店,那么希望下面的步骤可以帮到你。首先下载插件:Installation|VueDevtools(vuejs.org)https://devtools.vuejs.org/guide/installation.html然后点击InstallonChrome 之后打开chr

javascript - Typescript 中泛型类中 Type 的默认值

我需要根据变量在Typescript泛型类中的类型设置默认值,如下所示classMyClass{myvariable:T//HereIwanttosetthevalueofthisvariable//withthedefaultvalueofthetypepassedin'T'}例如,如果T是数字,那么变量myvariable的默认值应该是“0”,同样对于字符串,它应该是空字符串等等。 最佳答案 您不能这样做,因为T的实际类型只会在运行时才知道。你可以做什么:abstractclassMyClass{myvariable:T;con

javascript - Typescript/JavaScript forEach

我正在做一个关于Typescript的词法范围处理的教程,我遇到了一个我以前从未见过的函数的使用。这看起来像forEach语句中的空函数。在typescript中它看起来像这样:fns.forEach(fn=>fn());在javascript中它看起来像:fns.forEach(function(fn){returnfn();});我从未见过像这样使用的函数。有人可以解释这是如何工作的吗?具体来说,fn=>fn()实际执行的是什么。引用下面的代码,是执行fns.push还是for循环?如果是For循环,则没有对此的引用,那么它是如何知道的?完整代码如下:typescript:varf

javascript - Vue 中的嵌套循环

我有一个通过vue传递的对象的对象,我这样做是为了运行:@{{question}}但是我收到这个错误:属性或方法“subjects”未在实例上定义,但在渲染期间被引用。确保在数据选项中声明响应式数据属性。(在根实例中找到)如何在vue中运行嵌套循环? 最佳答案 举个例子:varvm=newVue({el:'#app',data:{questions:[{subjects:['question1.1','question1.2']},{subjects:['question2.1','question2.2']}]}}){{subje

javascript - 从 typescript 使用内部 javascript 文件

我的项目中有一个js文件,我需要从ts文件中使用它。js文件路径为“javascript/jsToConsume.js”。ts文件路径为“typescript/client.ts”我在“typings/internal/jsToConsume.d.ts”路径下添加了声明文件,其内容如下:declarenamespacejsToConsume{exportfunctionfunc1():void;}在我的client.ts中,我尝试使用它:///import*asjsToConsumefrom'../javascript/jsToConsume'但是'../javascript/jsTo

javascript - Vue.js 'v-bind:class' 不更新,即使模型更新

我有一个项目列表,我想对当前选定的项目应用一种样式。我也在使用Vuex来管理状态。我的列表组件:constList=Vue.component('list',{template:'0">'+''+'{{g.text}}'+''+''computed:{items:function(){returnthis.$store.state.items;}},methods:{selectItem:function(index){this.$store.commit('selectItem',index);}}});我的商店:conststore=newVuex.Store({state:{it

javascript - 使用 Vue.js 播放声音

如何使用Vue.js播放声音?似乎我不能只做常规的方式。importVuefrom'vue'importAppViewfrom'./components/App.vue'console.log('Playoutsideofvue')varaudio=newAudio('file.mp3')audio.play()newVue({el:'#root',mounted(){console.log('Willitplayhere??lol')varaudio=newAudio('file.mp3')audio.play()},render:h=>h(AppView)})正如它所说,音频未定义

javascript - 在 vue 路由中匹配查询参数

有什么方法可以通过查询参数进行路由吗?我想匹配以下路由:site.com/?foo=123。我试过类似的东西{path:'/\?foo=[\d]*'}没有成功。 最佳答案 不幸的是,您无法匹配路由定义的path字符串中的查询参数。VueRouter使用path-to-regexp和itsdocumentation说:TheRegExpreturnedbypath-to-regexpisintendedforusewithpathnamesorhostnames.Itcannothandlethequerystringsorfragm

javascript - typescript + moment.js : error TS2307: Cannot find module 'moment'

我正在开发一个网络应用程序,使用angular1.5、typescript2.4.0、moment:2.18.1和gulp进行项目组装。这是我的tsconfig.json:{"files":["src/app/main.ts","types/**/*.ts"],"compilerOptions":{"noImplicitAny":false,"target":"es2015","allowSyntheticDefaultImports":true}}在我的date-range-picker.component.ts中。我正在导入时刻库,正如maindocumentation中所建议的那

javascript - 如何在 angular2 typescript 中正确执行 "bind"?

我想使用一个javascript库,它需要像这样创建一个对象并绑定(bind)到它:this.mystr="hello";this.webkitspeech=newwebkitSpeechRecognition();this.webkitspeech.onresult=function(evt){console.log(this.mystr);//thisisundefined,eventhoughIdohaveitdefined}我通常会做一个.bind(this)虽然在typescript中我想这样做:this.mystr="hello"this.webkitspeech=neww