理解PHP MVC,以及NPM、YARN命令的相关说明

本站所有内容来自互联网收集,仅供学习和交流,请勿用于商业用途。如有侵权、不妥之处,请第一时间联系我们删除!Q群:迪思分享

[h1]PHP和MVC[/h1]

[h2](1)作用[/h2]

MVC,在我印象中最典型的、自己用的多的当属THinkPHP。

MVC包括控制器(Controller),模型(Model),视图(View)。

控制器的作用是调用模型和 视图,将模型产生的数据传递给视图,并让视图去显示

模型的作用是获取数据并处理返回数据

视图的作用是将取得的数据进行美化,并向用户终端输出

[h2](2)执行过程[/h2]

1. 浏览者 -> 调用控制器,发出指令

2. 控制器 -> 按指令选择合适的模型

3. 模型 -> 按指令取数据

4. 控制器 -> 按指令选视图

(以上包括控制器的业务逻辑:如何选取模型、数据的二次处理,逻辑判断等待)

5. 视图 -> 把取到的数据展示出来

<?php

    class Controller{
       /*控制器的处理方法*/
        function show(){
            $testModel = new Model();/*按指令选择一个数据模型*/
            $data = $Model -> get();/*模型按照指令取数据*/
            /*按指令选择视图 实例化一个view的对象*/
            $View  = new View();
            /*把取到的数据通过视图按用户的样子显示出来*/
            $View -> display($data);
        }
    }

?>

[h1]npm命令详解[/h1]

官方说明:https://docs.npmjs.com/cli/v8/commands/npm-init/

[h2]# 创建一个package.json文件[/h2]

npm init(别名 npm create)

[h2]# 查看当前包的安装路径[/h2]

npm root

[h2]# 安装包[/h2]

npm install ModuleName / npm i

[h2]# 安装指定版本[/h2]

npm install 包名@版本号

-f 或 --force:将强制 npm 获取远程资源,即使磁盘上存在本地副本也是如此。
–legacy-peer-deps:在安装时忽略所有 peerDependencies,采用 npm 版本 4 到版本 6 的样式。

[h2]# 全局安装[/h2]

npm install ModuleName -g

[h2]# 安装包的同时,将信息写入到package.json中的 dependencies 配置中[/h2]

npm install ModuleName --save

[success title=”版本号”]^: b允许在不修改 [major, minor, patch] 中最左非零数字的更改(匹配大于 X、Y、Z 的更新 Y、Z 的版本号)

~: 匹配大于 X.Y.Z 的更新 Z 的版本号[/success]

[h2]# 安装包的同时,将信息写入到package.json中的 devDependencies 配置中[/h2]

npm install ModuleName --save-dev

[h2]# 配置安装模式[/h2]

npm set global=true # 全局模式
npm set global=false # 本地模式

[h2]# 查看当前安装模式,将会得到一个布尔值[/h2]

npm get global

[h2]# 查看npm的版本[/h2]

npm -v

[h2]# 查看所有全局安装的包[/h2]

npm ls -g

[h2]# 查看本地项目中安装的包[/h2]

npm ls

[h2]# 查看包的 package.json文件[/h2]

npm view ModuleName

[h2]# 查看包的依赖关系[/h2]

npm view ModuleName dependencies

[h2]# 查看包的源文件地址[/h2]

npm view ModuleName repository.url

[h2]# 查看包所依赖的node版本[/h2]

npm view ModuleName engines

[h2]# 查看npm所使用的文件夹[/h2]

npm help folders

[h2]# 更改包内容后进行重建[/h2]

npm rebuild ModuleName

[h2]# 检查包是否已经过时,此命令会列出所有已经过时的包,可以及时进行包的更新[/h2]

npm outdated

[h2]# 更新当前目录下node_modules子目录里的包[/h2]

npm update ModuleName

[h2]# 全局更新[/h2]

npm update ModuleName

[h2]# 卸载包[/h2]

npm uninstall ModuleName

[h2]# 访问npm的json文件,此命令将会打开一个网页[/h2]

npm help json

[h2]# 发布一个包的时候,需要检验某个包名是否存在[/h2]

npm search ModuleName

[h2]# 清空npm缓存[/h2]

npm cache clear

[h2]# 撤销自己发布过的某个版本代码[/h2]

npm unpublish

[h2]# 使用淘宝镜像[/h2]

npm install -g cnpm --registry=https://registry.npm.taobao.org

[h1]记录一次npm报错[/h1]

Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.

在新版本的npm中,默认情况下,npm install遇到冲突的peerDependencies时将失败。

使用–force或–legacy-peer-deps可解决这种情况。

  • –force 会无视冲突,并强制获取远端npm库资源,当有资源冲突时覆盖掉原先的版本。
  • –legacy-peer-deps:安装时忽略所有peerDependencies,忽视依赖冲突,采用npm版本4到版本6的样式去安装依赖,已有的依赖不会覆盖。

[success title=”提示”]同一个项目中的不同的开发人员可同时使用NPM和YARN[/success]

[h1]Yarn[/h1]

相关文档:https://yarn.bootcss.com/docs

[h2]# 查看Yarn版本[/h2]

yarn --version |  -v

[h2]# 初始化包[/h2]

yarn init #创建package.json

[h2]# 配置淘宝镜像[/h2]

yarn config set registry https://registry.npm.taobao.org

[h2]# 安装依赖[/h2]

yarn install #默认安装到./node_modules
yarn install --audit  #安装时自动检测
arn install --vernbor #显示完整安装日志

[h2]# 添加依赖[/h2]

yarn add package-name    #安装包的“最新”版本。
yarn add package-name@1.2.3  #从注册表安装特定版本的包,使用--exact或-E安装软件包作为精确版本。
yarn add package-name@tag    #安装特定的 “标签”(例如beta、next或latest)。
yarn -D | yarn global package   #项目|全局

[h2]# 移除依赖[/h2]

yarn remove <package...>

[h2]# 依赖更新[/h2]

yarn upgrade
yarn upgrade left-pad
yarn upgrade left-pad@^1.0.0
yarn upgrade left-pad grunt
yarn upgrade @angular

[h2]# 检查软件包的安全问题[/h2]

yarn audit 

[h2]# 缓存清理[/h2]

yarn cache clean

[h2]# 全局操作[/h2]

yarn global add/list/upgrade...

[h2]# 列出已安装的软件包[/h2]

yarn list

[h2]# 运行脚本[/h2]

yum run script

[h2]# 老旧版本检查[/h2]

yarn oudated

© 版权声明
THE END
★喜欢这篇文章吗?喜欢的话,麻烦动动手指支持一下!★
点赞0 分享
相关推荐
  • 暂无相关文章
  • 评论 抢沙发

    请登录后发表评论

      暂无评论内容