日常问题速记


云服务器配置部署前端项目实践

从零搭建前端项目运行环境

  1. 登录服务器

  2. 安装node
    下载Node.js安装包

    1
    2
    $ cd /usr/local/src/
    $ wget https://nodejs.org/dist/v10.15.3/node-v10.15.3-linux-x64.tar.xz

解压文件

1
$ tar xvf node-v10.15.3-linux-x64.tar.xz

创建软链接

1
2
$ ln -s /home/node-v10.15.3-linux-x64.tar.xz/bin/node /usr/local/bin/node
$ ln -s /home/node-v10.15.3-linux-x64.tar.xz/bin/npm /usr/local/bin/npm

验证

1
$ node -v

  1. 安装nginx

安装nginx相关的依赖

1
2

$ yum -y install gcc pcre-devel zlib-devel openssl openssl-devel

安装nginx相关的依赖

1
2
$ cd /usr/local/src/
$ wget http://nginx.org/download/nginx-1.16.0.tar.gz

解压文件

1
$ tar -zxvf zlib-1.16.0.tar.gz

编译

1
2
3
4
//进入nginx
$ cd nginx-1.16.0
$ ./configure
$ make install

启动

1
2
$ cd /usr/local/nginx/sbin/
$ ./nginx

安装pm2

1
2
3
4
5
$ npm install -g pm2 命令行全局安装pm2
$ pm2 start app.js 或者 pm2 start bin/www 启动node项目

$ pm2 stop bin/www 停止pm2服务
$ pm2 list 列出由pm2管理的所有进程信息,还会显示一个进程会被启动多少次,因为没处理的异常。

前端命名规范

促进项目中名称命名统一

参考 ant-design
参考 element UI

类型 规则
项目名 全小写,中划线 eg: ant-design
文件夹名 全小写,中划线 eg: page-header
文件名 全小写,中划线 包括图片,html,js等
组件名 大驼峰 eg: TimePicker.vue
id class 全小写,中划线 header-logo
类名 大驼峰 eg: Student
方法名 小驼峰 eg: getUserInfo()
变量名 小驼峰 userInfo
常量名 全大写 下划线 MAX_COUNT

跨域及解决方案

跨域定义

跨域:即请求的地址与被请求的地址协议头、域名、端口有一个不一样就叫跨域.相反,不跨域即叫同源,
同源:即协议头(http/https)、域名、端口完全一致就叫同源;

跨域解决方案


跨域解决方案

1、 通过jsonp跨域

2、 document.domain + iframe跨域

3、 location.hash + iframe

4、 window.name + iframe跨域

5、 postMessage跨域

6、 跨域资源共享(CORS)

7、 nginx代理跨域

8、 nodejs中间件代理跨域

9、 WebSocket协议跨域

VUE知识点梳理

1.对于 MVVM 的理解


MVVMModel-View-ViewModel 的缩写

Model : 代表数据模型,也可以在 Model 中定义数据修改和操作的业务逻辑。我们可以把 Model 称为数据层,因为它仅仅关注数据本身,不关心任何行为

View : 用户操作界面。当 ViewModel 对 Model 进行更新的时候,会通过数据绑定更新到 View

ViewModel : 业务逻辑层,View 需要什么数据,ViewModel 要提供这个数据;View 有某些操作,ViewModel 就要响应这些操作,所以可以说它是 Model for View.
总结: MVVM 模式简化了界面与业务的依赖,解决了数据频繁更新

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×