小编Jam*_*ett的帖子

HMR 不适用于 Docker 中的 Laravel Mix

我在 Docker 容器内的 Laravel Mix 中设置热模块重新加载时遇到一些问题。

我有以下 Dockerfile:

FROM php:7.4.0-fpm

RUN curl -sL https://deb.nodesource.com/setup_13.x | bash

RUN apt-get update && \
    apt-get install -y -q --no-install-recommends \
    nano apt-utils curl unzip default-mysql-client nodejs build-essential git \
    libcurl4-gnutls-dev libmcrypt-dev libmagickwand-dev \
    libwebp-dev libjpeg-dev libpng-dev libxpm-dev \
    libfreetype6-dev libaio-dev zlib1g-dev libzip-dev && \
    echo 'umask 002' >> /root/.bashrc  && \
    apt-get clean

# Docker PHP Extensions
RUN docker-php-ext-install -j$(nproc) iconv gettext gd mysqli curl pdo pdo_mysql zip && \
    docker-php-ext-configure gd --with-freetype=/usr/include/ …
Run Code Online (Sandbox Code Playgroud)

laravel docker docker-compose webpack-dev-server laravel-mix

10
推荐指数
1
解决办法
2930
查看次数

Node.js docker 容器不会随着体积的变化而更新

我正在尝试在托管前端和后端容器的 Windows 机器上托管开发环境。到目前为止,我只在后端工作。所有文件都在通过 Docker 桌面共享的 C 盘上。

我有以下 docker-compose 文件和 Dockerfile,后者位于根目录中名为 backend 的目录中。

Dockerfile:

FROM node:12.15.0-alpine

WORKDIR /usr/app

COPY package*.json ./

RUN npm install

EXPOSE 5000

CMD [ "npm", "start" ]
Run Code Online (Sandbox Code Playgroud)

docker-compose.yml:

version: "3"
services:
  backend:
    container_name: backend
    build:
        context: ./backend
        dockerfile: Dockerfile
    volumes:
      - ./backend:/usr/app
    environment:
      - APP_PORT=80
    ports:
      - '5000:5000'

  client:
    container_name: client
    build:
      context: ./client
      dockerfile: Dockerfile
    volumes:
      - ./client:/app
    ports:
      - '80:8080'
Run Code Online (Sandbox Code Playgroud)

出于某种原因,当我对本地文件进行更改时,它们不会反映在容器内。我正在通过稍微修改我的一个文件的输出来测试这个,但我每次都必须重建容器才能看到更改生效。

我之前在 PHP 应用程序中使用过 Docker,并且基本上做了同样的事情。所以我不确定为什么这不适用于 Node.js 应用程序。我想知道我是否只是遗漏了一些显而易见的东西,为什么这不起作用。

任何帮助,将不胜感激。

node.js docker docker-compose

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

如何处理 Node.js REST API 中的非传统查询

我有一些 PHP 和前端 JavaScript 经验,但我正在尝试制作一个 Node.js REST API 来为我的一个应用程序的 Vue.js 客户端提供服务,但是我正在努力解决某个概念。到目前为止,我主要关注在线文档和指南。

我正在使用 Express.js 和 MySQL 数据库。

在这个例子中,我有一个定义客户本身的客户模型,以及与数据库交互的方法。

// constructor
const Customer = function(customer) {
  this.email = customer.email;
  this.name = customer.name;
  this.active = customer.active;
  this.created_at = customer.created_at
};

Customer.getAll = result => {
  sql.query("SELECT * FROM customers", (err, res) => {
    if (err) {
      console.log("error: ", err);
      result(null, err);
      return;
    }

    console.log("customers: ", res);
    result(null, res);
  });
};

...
Run Code Online (Sandbox Code Playgroud)

然后我有一个客户控制器,它控制被调用的方法并在将其检索到前端之前进行任何操作。

const Customer = require("../models/customer.model.js");

exports.findAll = (req, res) => {
  Customer.getAll((err, …
Run Code Online (Sandbox Code Playgroud)

javascript rest node.js express

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

Laravel API 响应对象格式化

我创建了一个基本的 Laravel REST API,它将为一些使用 axios 发出请求的 JavaScript 应用程序提供服务。

我的应用程序使用基本控制器来确保所有响应都以相同的格式发送:

class BaseController extends Controller
{
    /**
     * success response method.
     *
     * @param $result
     * @param $message
     *
     * @return JsonResponse
     */
    public function sendResponse($result, $message)
    {
        $response = [
            'success' => true,
            'data' => $result,
            'message' => $message,
        ];

        return response()->json($response, 200);
    }

    /**
     * return error response.
     *
     * @param $error
     * @param  array  $errorMessages
     * @param  int  $code
     *
     * @return JsonResponse
     */
    public function sendError($error, $errorMessages = …
Run Code Online (Sandbox Code Playgroud)

rest laravel axios laravel-api

3
推荐指数
1
解决办法
5075
查看次数