Alguna vez es necesario realizar acciones en paralelo en nuestras aplicaciones. En PHP no es tan sencillo y a veces implica algunas complicaciones. Para aquellos que necesitan realizar estas tareas puede venir muy bien esta librería que nos facilita enormemente estas funciones.
Permite ejecutar funciones síncronas y asíncronas, control de las salidas, pasarle argumentos a los scripts y obtener la salida en HTML y PHP.
Ahora veremos la forma de combinar la caracterÃstica del drag drop (script.aculo.us) con PHP y MySQL, esto con el objetivo de que los elementos que hemos seleccionado o movido de un lugar a otro se queden guardados en una base de datos.
El sitio, del que no se ha precisado nombre comercial, hará su debut este verano y ofrecerá miles de horas de programas de televisión, pelÃculas y otros contenidos audiovisuales de forma gratuita para los usuarios de la red. Emitirán capÃtulos compl
Como se puede ver, existen dos scripts dentro de npm: build que compila el js y extrae los CSS, y dev, que arranca el servidor de webpack habilitando HMR (🎶 ¡ya no puedo vivir sin él! 🎶).
Ambas configuraciones de webpack usan un script en común (webpack.config.common.js):
const webpack = require( 'webpack' );
const path = require( 'path' );
// Carga los ficheros .vueconst VueLoaderPlugin = require( 'vue-loader/lib/plugin' );
// Configura stylelintconst StyleLintPlugin = require( 'stylelint-webpack-plugin' );
// Para obtener un path para los aliasfunctionresolve( dir ) {
return path.join( __dirname, '.', dir );
}
module.exports = {
mode: 'production',
// Fichero inicial del proyecto
entry: './js/main.js',
// Fichero final para incluir
output: {
filename: 'js/main.js',
publicPath: '/dist/',
},
module: {
// Reglas para los ficheros
rules: [
{
test: /\.js$/,
exclude: /node_modules/,
loader: 'babel-loader',
},
{
test: /\.vue$/,
loader: 'vue-loader',
},
{
test: /\.css$/,
use: [
'css-loader',
'sass-loader',
],
},
],
},
plugins: [
new webpack.HotModuleReplacementPlugin(),
new VueLoaderPlugin(),
new StyleLintPlugin( {
files: [ '**/*.{vue,htm,html,css,sss,less,scss,sass}' ],
} ),
],
resolve: {
extensions: [ '.js', '.vue', '.json' ],
alias: {
'@': resolve( '' ),
},
},
};
El frontend se gestiona desde el fichero main.js, que inicializará Vue y añadirá el componente principal:
import Vue from 'vue';
import Buefy from 'buefy';
import'buefy/dist/buefy.css';
import App from './components/App.vue';
import'@/assets/scss/main.scss';
Vue.use( Buefy );
new Vue( {
el: '#app',
components: {
App,
},
render: ( c ) => c( 'app' ),
} );
// accept replacement modulesif ( module.hot ) {
module.hot.accept();
}
Y ya por último el componente App.vue, que muestra simplemente un poco de HTML
¿Cansado de escuchar hablar de AJAX y no saber cómo funciona? Si es asÃ, este tutorial está pensado para ti. Explica paso a paso como montar una página que se refresque dinámicamente mediante peticiones AJAX, con ejemplos muy claros y didáticos
La gracia de JotSpot es que no sólo ofrecÃan wikis, sino que eran “wikis con esteroides”: admiten desde hojas de cálculo hasta fotos, pasando por calendarios y otros tipos de documento