小编how*_*nez的帖子

从父级访问Vue中组件的计算属性

如何从父级访问Vue中组件的计算属性?

在这个例子中,我有一个带有项目组件的购物车,我想计算并显示购物车项目的总和:

cart.js

var vm = new Vue({

  el: '#cart',

  components: {
    cartItem: require('./components/cart-item.js'),
  },

  data: {
    items: [
      { name: 'apple', qty: 5, price: 5.00 },
      { name: 'orange', qty: 7, price; 6.00 },
    ],
  },

  computed: {
    // I want to do something like this and access lineTotal from cart
    cartTotal: function() {
      return this.items.reduce(function(prev,curr) {
        return prev + curr.lineTotal;
      }, 0)
    }
  }
});
Run Code Online (Sandbox Code Playgroud)

购物车,item.js

module.exports = {
    template: require('./cart-item.template.html'),
    props: ['fruit'],
    computed: {
      lineTotal: function() { …
Run Code Online (Sandbox Code Playgroud)

javascript vue.js

7
推荐指数
1
解决办法
3357
查看次数

即使使用Web中间件,Laravel 5.2会话闪存也无法正常工作

我正在尝试使用会话实现Flash消息,但我无法这样做.

在我的控制器中我有:

public function store(Request $request) {
    session()->flash('donald', 'duck');
    session()->put('mickey', 'mouse');
    return redirect()->action('CustomerController@index')->with('bugs', 'bunny');
}
Run Code Online (Sandbox Code Playgroud)

但是当我在视图中检查会话变量时,我只能看到来自的值session()->put('mickey', 'mouse').

会议:

{"_token":"F6DoffOFb17B36eEJQruxvPe0ra1CbyJiaooDn3F","_previous":{"url":"http:\/\/localhost\/customers\/create"},"flash":{"old":[],"new":[]},"mickey":"mouse"}
Run Code Online (Sandbox Code Playgroud)

很多人通过在Web中间件中没有相关路由来遇到这个问题.我也确保这样做但它仍然不起作用.

在routes.php中:

Route::group(['middleware' => ['web']], function () {

    Route::get('/', function () {
        return view('welcome');
    });

    Route::get('/customers', 'CustomerController@index');
    Route::get('/customers/create', 'CustomerController@create');
    Route::post('/customers', 'CustomerController@store');
});
Run Code Online (Sandbox Code Playgroud)

在Kernel.php中:

protected $middlewareGroups = [
    'web' => [
        \App\Http\Middleware\EncryptCookies::class,
        \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
        \Illuminate\Session\Middleware\StartSession::class,
        \Illuminate\View\Middleware\ShareErrorsFromSession::class,
        \App\Http\Middleware\VerifyCsrfToken::class,
    ],

    'api' => [
        'throttle:60,1',
    ],
];
Run Code Online (Sandbox Code Playgroud)

任何人都可以让我知道我在这里做错了什么吗?谢谢!

php session flash-message laravel laravel-5.2

6
推荐指数
2
解决办法
7465
查看次数

检索选择元素的文本

<select>使用vue.js 绑定元素时v-model,如何获取所选选项文本而不是所选选项值?

在HTML中:

<select v-model="selected" options="myOptions"></select>
Run Code Online (Sandbox Code Playgroud)

在JS中:

myOptions: [{ text: 'Blue', value: '1' }, { text: 'Green', value: '2' }]
Run Code Online (Sandbox Code Playgroud)

我想要检索的是文本'Blue'以及值'1',通过执行类似{{ selected.text }}或的操作{{ selected.value }}.但是,您只能{{ selected }}默认返回所选值.

参考:动态选择选项的Vue.js指南

vue.js

5
推荐指数
1
解决办法
4270
查看次数

使用Eloquent实现group_by并在Laravel中使用

我在实现group_by和在Laravel中使用Eloquent进行查询时遇到了问题.

这是场景:

orders
 - id
 - qty

deliveries
 - id
 - qty
 - order_id
Run Code Online (Sandbox Code Playgroud)

我想使用联接来显示具有不完整交货的订单以及相应的余额:

Order::left_join('deliveries', 'orders.id', '=', 'deliveries.order_id')
     ->select(array('orders.*'), DB::raw('orders.qty - IFNULL(sum(deliveries.qty),0) AS balance')))
     ->group_by('order_id')
     ->having('balance', '>', 0)
     ->get();
Run Code Online (Sandbox Code Playgroud)

没有'having'子句,'balance'值可以正常工作.但是,在添加'having'子句时,结果表不会显示任何行.有没有人有任何想法?

提前致谢!

php group-by having laravel eloquent

4
推荐指数
1
解决办法
2万
查看次数