Il codice Change non funziona nell'editor VS Studio code

Quando prendo del codice nella cartella hbs su localhost e lo metto in un’altra cartella hbs, non funziona. Viene inserito del testo lì ed è su quella pagina, ma non ha assolutamente alcuna funzionalità, dopo aver aggiornato la pagina tutto viene resettato perché è solo come una stringa..

Puoi aiutarmi?

Se, ad esempio, volessi inserire tutto da interface.hbs in account.hbs in modo che abbia funzionalità, cosa dovrei fare?

Penso che rispondere a questa domanda aiuterebbe molte persone.

Grazie per la tua risposta

Le cose sono un po’ più complicate di così. Questo non è correlato al tuo editor, VS Code è un’ottima scelta.

Discourse è un’applicazione a pagina singola MVC che utilizza EmberJS sul front-end e impiega Routes, Models, Controllers e Templates.

Modificare solo i Templates di solito non è sufficiente.

Sarebbe molto utile per te fare qualche lettura su EmberJS.

Ma, ad esempio, parte del motivo per cui manca la funzionalità è che i Controllers sono diversi.

Ecco tutti i Controllers per questa parte del back-end JavaScript dell’applicazione:

https://github.com/discourse/discourse/tree/main/app/assets/javascripts/discourse/app/controllers/preferences

La leggera complicazione qui è che a volte i Components rispondono alle azioni, così come i Controllers.

Inoltre, potresti dover preoccuparti di quale modello viene presentato a ciascuna di queste diverse Routes.

Le Routes delle preferenze si trovano qui con il prefisso preferences:

https://github.com/discourse/discourse/tree/main/app/assets/javascripts/discourse/app/routes

Diventa ancora più complesso, poiché i dati che Ember vede sono quasi sempre originariamente forniti dal back-end e quindi influenzati dalle Routes, dai Controllers (e spesso dai Models) e dagli Serializers di Rails sul back-end. Vedi https://guides.rubyonrails.org/

4 Mi Piace

Stai cercando di apportare modifiche al core (quasi certamente non vorrai farlo), o stai sviluppando un plugin? Se non l’hai già fatto, dai un’occhiata a Guida per principianti alla creazione di plugin Discourse Parte 1: Creazione di un plugin di base.

3 Mi Piace

Sì, perché ho bisogno di ottenere alcune funzioni altrove

Puoi “ottenere alcune funzioni altrove” in un plugin. Se esegui il fork di Discourse, te ne pentirai se vorrai usarlo per più di un mese. Ho sviluppato una dashboard che ti permette di installare e gestire Discourse come un plugin.

5 Mi Piace

Ho caricato un plugin su discourse, e ho sostituito in plugins/notebook-main/assets/javascripts/discourse/controllers/notebook.js.es6, ho sostituito questo file con il file di interfaccia necessario + ho fatto lo stesso con il template hbs.

Tutto funziona in teoria, tranne che non vogliamo salvare le modifiche.

Uncaught Error: Property set failed: object in path "model.user_option" could not be found.
    Ember 3
    save notebook:194
    _join backburner.js:995
    join backburner.js:760
    Ember 4
    _triggerAction d-button.js:137
    click d-button.js:106
    Ember 2
    _run backburner.js:1013
    _join backburner.js:989
    join backburner.js:760
    Ember 6
    jQuery 8
    initialize click-interceptor.js:15
    initialize app.js:47
    runInstanceInitializers Ember
    each dag-map.js:231
    walk dag-map.js:145
    each dag-map.js:75
    topsort dag-map.js:83
    Ember 4
    invoke backburner.js:338
    flush backburner.js:229
    flush backburner.js:426
    _end backburner.js:960
    end backburner.js:710
    _run backburner.js:1015
    _join backburner.js:989
    join backburner.js:760
    Ember 2
    jQuery 12