src/app.js
wie folgt aussieht:vuejs: Filter in externer Datei?
import Vue from 'vue'
import VueRouter from 'vue-router'
import VueResource from 'vue-resource';
Vue.use(VueRouter);
Vue.use(VueResource);
const app = require("./app.vue");
const f = require('./filters');
const router = new VueRouter({
routes: [
{name: 'home', path: '/', component: home}
]
});
new Vue({
router: router,
filters: f,
render: h => h(app)
}).$mount("#app");
src/filters/index.js
wie folgt aussieht:
webpack
module.exports = {
season: (value) => {
return 'foo';
}
}
Mit ihm rollen, aber der Filter funktioniert nicht und Vue warnt mich wie so:
build.js:830 [Vue warn]: Failed to resolve filter: season
(found in <Anonymous>)
Wie kann ich meine Filter richtig in eine separate Datei einfügen?
kann mich so etwas wie 'Vue.filter (f)' so importieren sie alle definierten Filter in dieser Datei, gegen das Hinzufügen eines 'Vue.filter()' Aufruf für jeden Filter ? – Wells
Ich denke, ich könnte ein 'let Filter von f' machen und' Vue.filter' für jedes nennen, aber das scheint auch ineffizient zu sein ... – Wells
Nein. Du müsstest mit deiner zweiten Option gehen und sie durchlaufen. Oder importiere Vue in deine filters.js und füge sie einfach dort hinzu, wenn du sie definierst. – Bert