整理了下最近的一些零零碎碎
设置VSCode字体
设置VSCode
为JetBrains Mono
字体
先下载并安装JetBrains Mono该字体,并打开首选项>设置
的配置文件编辑setting.json
加上如下配置:
"editor.fontFamily": "JetBrains Mono",
"editor.fontLigatures": true,
VSCode人性化设置
{
"editor.formatOnSave": true, //保存时自动格式化
"files.autoSave": "onFocusChange", //失去焦点时自动保存
"editor.codeActionsOnSave": {
"source.fixAll.eslint": true //保存ESLint自动修复
}
}
利用脚本一次性打开常用网站
思路: shell
+ Alfred
实现
shell脚本如下:
#!/bin/bash
function openURL() {
open -a "/Applications/Safari.app" $1
}
URLArr=(
"https://wwww.baidu.com"
"https://www.github.com"
"https://www.google.com"
)
for url in ${URLArr[@]}
do
openURL url
done
配置好URLArr
,调用Alfred
执行脚本即可.
Vue的watch用法
类似于iOS
的KVO
键值观察监听机制
- 监听
data
里的属性,监听属性变化 - 监听
props
父组件对子组件传值的变化 - 对象的监听,需要加个
deep
深度监听,对象某个属性则需要监听计算属性 (数组的监听不需要设置deep
) handler(newVal,oldVal)
监听处理方法immediate
一般设置该属性为true
,字面意思是快速的即时的,大概是实时监听的意思吧
Vue自己的组件如何实现v-model双向绑定
子组件MyChild
:
<template>
<div class="child-container">
<div class="demo">
<h5>{{ value }}</h5>
<button @click="clickButton">按钮</button>
</div>
</div>
</template>
<script>
export default {
name: "MyChild",
props: {
value: {
type: String,
default: "",
},
},
model: {
// 属性绑定事件 该事件外部可以不用监听 value内部更新 外部一样可以获取到改变
props: "value",
event: "bindEvent",
},
methods: {
clickButton() {
// 双向绑定 外层父组件的v-model绑定的属性 这里传值可以不用传this.value 可以hook搞别的数据也行 反正最终都会绑定到this.value
this.$emit("bindEvent", this.value);
},
},
};
</script>
父组件InputData
调用:
<template>
<div>
<el-input v-model="input" placeholder="请输入内容"></el-input>
<h3>{{ input }}</h3>
<!-- 对于仅仅只是做双向绑定, @bindEvent="changeValue" 这句代码写不写无所谓 只是看父组件调用方是否需要这个事件进行处理而已 -->
<MyChild v-model="input" @bindEvent="changeValue"></MyChild>
</div>
</template>
<script>
import MyChild from "@/components/MyChild";
export default {
name: "InputData",
components: {
MyChild,
},
data() {
return {
input: "",
};
},
methods: {
changeValue(val) {
console.log(val);
},
},
};
</script>
效果如图:
CSS样式作用域
vue
文件内的css
样式一般会加一个scoped
,这是作用在局部的,但是有一些第三方组件样式,需要强制修改就得加穿透/deep/
或者去掉scoped
才能生效,一般的css
要修改已有样式,加权重加!important
就完事儿了,反正谁在最后,谁的权重最大就听谁的~
Vue脚手架以及node基本操作
Vue-cli官方文档
vue-cli
是快速搭建vue
项目的脚手架
- 全局安装
npm install -g @vue/cli
- 创建项目
一般都配置babel+ESLint+Less+Vuex+Router
vue create hello-world
- 也可使用
GUI
工具创建,其实是一样的,哪个方便哪个来
vue ui
- 运行项目
# 开发环境
npm run dev
# 生成环境
npm run serve
- 打包
npm run build
- 添加开发插件
npm install --save-dev plugin-xxx
- 添加第三方库
npm i element-ui -S
Vue导入组件/注册使用
//全局引入
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
import App from './App.vue';
Vue.use(ElementUI);
//按需引入
import { Button, Select } from 'element-ui';
import App from './App.vue';
Vue.component(Button.name, Button);
Vue.component(Select.name, Select);
/* 或写为
* Vue.use(Button)
* Vue.use(Select)
*/
未经作者授权,禁止转载
本文来自博客园,作者:CoderWGB,转载请注明原文链接:https://www.cnblogs.com/wgb1234/p/14852404.html
THE END