vue做博客中的问题记录
1,全局变量,统一管理变量文件,路径如:../src/static/css/globle.scss
<1>添加依赖
npm install sass-resources-loader --save-dev
<2>在项目build文件夹里找到utils.js ,定位到下边代码
return { css: generateLoaders(), postcss: generateLoaders(), less: generateLoaders('less'), sass: generateLoaders('sass', { indentedSyntax: true }), scss: generateLoaders('sass'), stylus: generateLoaders('stylus'), styl: generateLoaders('stylus') }
把上面这句scss: generateLoaders('sass'),改成如下
scss: generateLoaders('sass').concat( { loader: 'sass-resources-loader', options: { resources: path.resolve(__dirname, '../src/static/css/bloble.scss')//这里按照你的文件路径填写 } } )
<3>npm run dev 这样就可以了
2,vue如何获取当前页面的url
浏览器地址:
http://localhost:8080/qust
获取方式:
1)
this.$route.path
2)
window.location.href
3)
this.$route.params
结果如下:
3,使用中用到了全局跨页面变量,所以需要用Vuex
使用Vuex的步骤:
两种方式,一种是直接引入文件就行
第二种是 npm install vuex --save
使用第二种安装包那就要在使用之前引入在main.js里使用 import Vuex from 'vuex'
参考 网址 https://www.jianshu.com/p/f393bdd3b03d
用vuex管理状态是在大型网站用,如果是小站,和小量的情况下,最好还是不用
可以用其它的办法如下:
《1》给vue根定义全局状态
《2》可以用localStorage来本地存储数据状态
5,样式优先级
《1》如果在app.vue文件里引入
那么在header文件里定义的样式优先级高于app.vue里的样式
《2》如果例如用组件list.vue里的样式,和app.vue里的样式对比,是相同class定义的时候,app.vue里的优先级高,这时候在组件里的不会覆盖之前定义的样式文件
6,推荐静态文件例如css,images这些都放在static目录下,省了没有必要的麻烦
7,父组件传值给子组件用prop
父组件这样写如下:
以下带:引号的是动态值,不带引号的就是写一个死的值就行
子组件接受之后直接使用
页面报错注意
1,Vue中提示报错handlers[i].call is not a function解决方法
这种情况一般就是看看页面里有没有空的钩子函数,如果没用的删除就好了
2,VUE初写小项目问题之命令行报错:Expected indentation of 4 spaces but found 6
在vue项目中找到build文件夹 --> webpack.base.conf.js --> module
module: { rules: [ // 把以下这句注释就可以了,这个是检测代码空格等严格模式 // ...(config.dev.useEslint ? [createLintingRule()] : []), },
3,在使用v-for的时候需要注意加上:key="index"不然会报vue语法错误
版权声明:本文由Web学习之路发布,如需转载请注明出处。