分类 技术探讨 下的文章

Vue.component(组件名, {
    template: 模板ID, // 使用script与template标签均可实现
    props: [传递数据参数],
    methods: {
        方法名: function () {}
    }
});

单文件可以参考上篇

我是使用import导入没有问题,用 webpack 生成的时候,发现用 Vue.component() 注册会报错,检查发现解决方法,删除new里的 components

import xyz from './components/head.vue';

使用全局注册组件时,须在新建实例的选项中将 components 删除

Vue.component('xyz ', require('./components/head.vue'));

new Vue({
  el: '#app'
  //components: { xyz }
});

使用 laravel5.4 提交表单使用的如果是POST方法会产生 TokenMismatch 错误

解决方法

在提交表单中添加一个隐藏域,name_token,值为 {{ csrf_token() }}

<input type="hidden" name="_token" value="{{ csrf_token() }}"/>

看到这种提示首先去检查自己的配置信息是否填写正确

step 1

检查根目录下的 .env

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=root

填写完毕.


stap 2

检查 config 目录下的 database.php

    'mysql' => [
        'driver' => 'mysql',
        'host' => env('DB_HOST', '127.0.0.1'),
        'port' => env('DB_PORT', '3306'),
        'database' => env('DB_DATABASE', 'laravel'),
        'username' => env('DB_USERNAME', 'root'),
        'password' => env('DB_PASSWORD', 'root'),
        'unix_socket' => env('DB_SOCKET', ''),
        'charset' => 'utf8mb4',
        'collation' => 'utf8mb4_unicode_ci',
        'prefix' => '',
        'strict' => true,
        'engine' => null,
    ]

填写上数据库名,用户名,密码


关闭服务,再开启
不成功的话,你需要把配置的缓存清理掉,再开启服务

// shell
$ php artisan config:clear
$ php artisan serve

学习的过程中,发现ORM的存进数据库的时间戳,再取出时,是本地时间相差了少了八个小时

getDateFormat() 函数中,设置 date_default_timezone_set('PRC');ini_set('date.timezone', 'Asia/Shanghai'); 均无效

查看手册知晓,在 config/app.php 里的 'timezone' 参数

'timezone' => 'PRC' // 或者 Asia/Shanghai ,时区设置成我大天朝就好了

composer是php的依赖管理工具,与前端的npm包管理差不多

今天就是来 在linux上如何安装composer(windows的一路下一步,没毛病)

setp 0

检查一下php版本号,可以显示版本号才能继续下面的操作

php -v

setp 1

首先准备好composer-setup.php

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

setp 2

在 shell 界面输入(如要全局安装请加上 --install-dir=bin --filename=composer)全局安装可以忽略后面所有操作

php composer-setup.php

setp 3

这步操作对普通用户使用都有效,当然root也可以

mv composer.phar /usr/local/bin/composer

setp 4

这个时候就可以查看你的composer版本号了

composer -v

撸了台hostker的,装的centos7.3,系统装完了一进去用netstat -antp喵一下网络连接的

发现netstat输出-bash: netstat: command not found

查了一下,发现是RHEL7准备废弃这几条命令了,废弃就废弃吧,我看看替换的新命令是咋样的

ip,ss

这又是要记参数的节奏呀!

好吧,还算简洁的,早晚都会用的,现在先熟悉用了。


ifconfig替换

ip addr

传输状态(-s 为详细显示)

ip link

netstat替换

ss

netstat -ant(-antp的输出个人看的不友好)

ss -ant

netstat -anu

ss -anu

traceroute/traceroute6替换

tracepath

route替换(-6 为IPv6)

ip route

ifconfig eth0 up/down替换

ip l set eth0 up/down

如果有新手学习 nodejs,获取 url post 传回的参数时,会发生和我一样的问题,今天就来解决这个小麻烦

node.js 不像 php 这种老牌后端语言有特定的获取外部参数的做法,毕竟是个新生力量,希望后来的版本能够更加便捷高效


//正常的获取值
app.get('/', (req, res) => {
  console.log(req.query);
  res.send('完成');
});
app.post('/', (req, res) => {
  console.log(req.body);
  res.send('完成');
});

正常输出的话,你的预想是这样的...

// GET请求
{
  name: '冯小贤',
  age: '18'
}
// 完成

// POST请求
{
  name: '冯小贤',
  age: '18'
}
// 完成

然而并不是!!!

// 两次的输出会是这样!!!
{ }
//undefined

这是因为我们这里缺少一个模块,express的中间件 body-parser

官方说明
Node.js body parsing middleware.
Parse incoming request bodies in a middleware before your handlers, available under the req.body property.

基本就是说,解析客户端请求的body中的内容,JSON编码处理和url编码处理


接下来我们就来安装 body-parser

// 安装 body-parser
npm install body-parser

// 导入 app.js
var bodyParser = require('body-parser');
app.use(bodyParser());

//这样就可以使用 req.body 来获取 post 传递来的值了
app.post('/', (req, res) => {
  console.log(req.body);
  res.send('完成');
});

// json就是用  app.use(bodyParser.json())